Skip to main content

Plugin

Trait Plugin 

Source
pub trait Plugin: Send + Sync {
    // Required methods
    fn metadata(&self) -> PluginMetadata;
    fn initialize(&mut self, config: PluginConfig) -> Result<(), PluginError>;
    fn execute(
        &self,
        context: &PluginContext,
    ) -> Result<PluginResult, PluginError>;
    fn cleanup(&mut self);
}
Expand description

Plugin trait that all plugins must implement

Required Methods§

Source

fn metadata(&self) -> PluginMetadata

Plugin metadata

Source

fn initialize(&mut self, config: PluginConfig) -> Result<(), PluginError>

Initialize the plugin

Source

fn execute(&self, context: &PluginContext) -> Result<PluginResult, PluginError>

Execute plugin functionality

Source

fn cleanup(&mut self)

Cleanup resources when plugin is unloaded

Implementors§