Skip to main content

ModuleCapability

Trait ModuleCapability 

Source
pub trait ModuleCapability {
    // Required methods
    fn capabilities(&self) -> Vec<Capability>;
    fn required_capabilities(&self, operation: &str) -> Vec<Capability>;

    // Provided methods
    fn has_capability(&self, cap: Capability) -> bool { ... }
    fn can_perform(&self, operation: &str) -> bool { ... }
}
Expand description

Trait for capability discovery

Required Methods§

Source

fn capabilities(&self) -> Vec<Capability>

Get list of supported capabilities

Source

fn required_capabilities(&self, operation: &str) -> Vec<Capability>

Get capability requirements for a specific operation

Provided Methods§

Source

fn has_capability(&self, cap: Capability) -> bool

Check if a specific capability is supported

Source

fn can_perform(&self, operation: &str) -> bool

Check if all required capabilities for an operation are available

Implementors§