pub struct FeatureRegistry {
features: HashMap<String, FeatureInterface>,
}
Expand description
Registry for feature interface definitions
Fields§
§features: HashMap<String, FeatureInterface>
Implementations§
Source§impl FeatureRegistry
impl FeatureRegistry
Sourcepub fn register_feature(&mut self, feature: FeatureInterface)
pub fn register_feature(&mut self, feature: FeatureInterface)
Register a feature interface
Sourcepub fn get_feature(&self, name: &str) -> Option<&FeatureInterface>
pub fn get_feature(&self, name: &str) -> Option<&FeatureInterface>
Get a feature interface by name
Sourcepub fn list_features(&self) -> Vec<&str>
pub fn list_features(&self) -> Vec<&str>
List all registered features
Sourcepub fn validate_provider_feature(
&self,
provider_name: &str,
feature_name: &str,
provider_operations: &[String],
) -> Result<(), String>
pub fn validate_provider_feature( &self, provider_name: &str, feature_name: &str, provider_operations: &[String], ) -> Result<(), String>
Validate that a provider implements a feature correctly
Sourcepub fn get_operation_definition(
&self,
feature_name: &str,
operation_name: &str,
) -> Option<&FeatureOperation>
pub fn get_operation_definition( &self, feature_name: &str, operation_name: &str, ) -> Option<&FeatureOperation>
Get operation definition for a feature
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FeatureRegistry
impl RefUnwindSafe for FeatureRegistry
impl Send for FeatureRegistry
impl Sync for FeatureRegistry
impl Unpin for FeatureRegistry
impl UnwindSafe for FeatureRegistry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more