Skip to main content

ComponentMetadataCatalog

Trait ComponentMetadataCatalog 

Source
pub trait ComponentMetadataCatalog: Send + Sync {
    // Required methods
    fn get_metadata(&self, scheme: &str) -> Option<ComponentMetadata>;
    fn schemes(&self) -> Vec<String>;
    fn all_metadata(&self) -> Vec<ComponentMetadata>;

    // Provided method
    fn query_capabilities(
        &self,
        query: &CapabilityQuery,
    ) -> Vec<ComponentMetadata> { ... }
}
Expand description

Query interface for component metadata at runtime.

Implementations store ComponentMetadata entries keyed by URI scheme and provide lookup and capability-filtering operations.

Required Methods§

Source

fn get_metadata(&self, scheme: &str) -> Option<ComponentMetadata>

Look up metadata for a component by its URI scheme.

Source

fn schemes(&self) -> Vec<String>

Return all schemes that have registered metadata.

Source

fn all_metadata(&self) -> Vec<ComponentMetadata>

Return metadata for all registered components.

Provided Methods§

Source

fn query_capabilities(&self, query: &CapabilityQuery) -> Vec<ComponentMetadata>

Filter components by capability query. Returns all metadata entries whose capabilities match every field in the query.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§