executeByCapabilities static method
Future<Map<String, dynamic> >
executeByCapabilities(
- dynamic provider,
- Map<
LLMCapability, Future Function()> actions
Execute multiple actions based on available capabilities Best for: Feature detection and conditional execution
Implementation
static Future<Map<String, dynamic>> executeByCapabilities(
dynamic provider,
Map<LLMCapability, Future<dynamic> Function()> actions,
) async {
final results = <String, dynamic>{};
if (provider is! ProviderCapabilities) {
return results;
}
for (final entry in actions.entries) {
if (provider.supports(entry.key)) {
try {
results[entry.key.name] = await entry.value();
} catch (e) {
results[entry.key.name] = 'Error: $e';
}
} else {
results[entry.key.name] = 'Not supported';
}
}
return results;
}