pub trait CloudProvider {
type Error: Error + Send + Sync + 'static;
// Required methods
fn list_api_methods(&self) -> Vec<ApiMethod>;
fn list_sdks(&self) -> Vec<Sdk>;
fn sdk_method_mappings(
&self,
resolved_sdk: &ResolvedSdk,
) -> Result<Vec<SdkMethodMapping>, Self::Error>;
fn permissions_policy(
&self,
methods: &[ApiMethod],
) -> Result<Value, Self::Error>;
}Required Associated Types§
Required Methods§
fn list_api_methods(&self) -> Vec<ApiMethod>
fn list_sdks(&self) -> Vec<Sdk>
Sourcefn sdk_method_mappings(
&self,
resolved_sdk: &ResolvedSdk,
) -> Result<Vec<SdkMethodMapping>, Self::Error>
fn sdk_method_mappings( &self, resolved_sdk: &ResolvedSdk, ) -> Result<Vec<SdkMethodMapping>, Self::Error>
§Errors
Returns an error when the SDK is unsupported or when its resolved modules contain missing, replaced, or unsupported versions.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".