Info

Trait Info 

Source
pub trait Info: Send + Sync {
    // Required methods
    fn depends(&self) -> &Vec<Depend>;
    fn optional_depends(&self) -> &Vec<Depend>;
}
Expand description

Trait for plugin information and dependencies.

The Info trait defines the interface for accessing a plugin’s dependency information. Implementations of this trait provide details about what other plugins this plugin depends on for its operation.

§Required Methods

  • depends - Returns the list of required dependencies
  • optional_depends - Returns the list of optional dependencies

§Example

use plux_rs::{Info, Depend};

struct MyInfo {
    required: Vec<Depend>,
    optional: Vec<Depend>,
}

impl Info for MyInfo {
    fn depends(&self) -> &Vec<Depend> {
        &self.required
    }

    fn optional_depends(&self) -> &Vec<Depend> {
        &self.optional
    }
}

Required Methods§

Source

fn depends(&self) -> &Vec<Depend>

Returns the list of required dependencies for this plugin.

Required dependencies must be available and loaded for the plugin to function.

§Returns

Returns a reference to a vector of required dependencies.

Source

fn optional_depends(&self) -> &Vec<Depend>

Returns the list of optional dependencies for this plugin.

Optional dependencies enhance functionality but are not required for basic operation.

§Returns

Returns a reference to a vector of optional dependencies.

Implementors§