Skip to main content

soma_provider_core/
provider.rs

1use async_trait::async_trait;
2
3use crate::{ProviderCall, ProviderCatalog, ProviderError, ProviderOutput};
4
5#[async_trait]
6pub trait Provider: Send + Sync {
7    fn catalog(&self) -> ProviderCatalog;
8
9    async fn call(&self, call: ProviderCall) -> Result<ProviderOutput, ProviderError>;
10}