pub struct PluginManager { /* private fields */ }Expand description
Plugin manager for discovering and executing plugins
Implementations§
Source§impl PluginManager
impl PluginManager
Sourcepub fn discover_plugins(&self) -> Vec<DiscoveredPlugin>
pub fn discover_plugins(&self) -> Vec<DiscoveredPlugin>
Discover plugins in PATH
Sourcepub fn execute_plugin(&self, name: &str, args: &[&str]) -> Result<i32>
pub fn execute_plugin(&self, name: &str, args: &[&str]) -> Result<i32>
Execute a plugin by name
Sourcepub fn trust_plugin(&self, name: &str) -> Result<String>
pub fn trust_plugin(&self, name: &str) -> Result<String>
Trust a plugin by recording its current hash
Sourcepub fn verify_plugin(&self, name: &str) -> Result<PluginVerifyResult>
pub fn verify_plugin(&self, name: &str) -> Result<PluginVerifyResult>
Verify a plugin’s integrity and return status
Sourcepub fn run_pre_hooks(&self, command: &str) -> Result<()>
pub fn run_pre_hooks(&self, command: &str) -> Result<()>
Run pre-command hooks
Sourcepub fn run_post_hooks(&self, command: &str) -> Result<()>
pub fn run_post_hooks(&self, command: &str) -> Result<()>
Run post-command hooks
Sourcepub fn list_plugins(&self) -> Vec<DiscoveredPlugin>
pub fn list_plugins(&self) -> Vec<DiscoveredPlugin>
List all discovered and configured plugins
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PluginManager
impl RefUnwindSafe for PluginManager
impl Send for PluginManager
impl Sync for PluginManager
impl Unpin for PluginManager
impl UnsafeUnpin for PluginManager
impl UnwindSafe for PluginManager
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more