Struct perseus::plugins::FunctionalPluginAction
source · pub struct FunctionalPluginAction<A, R> { /* private fields */ }
Expand description
An action which can be taken by many plugins. When run, a functional action will return a map of plugin names to their return types.
Trait Implementations§
source§impl<A, R> Debug for FunctionalPluginAction<A, R>
impl<A, R> Debug for FunctionalPluginAction<A, R>
source§impl<A, R> Default for FunctionalPluginAction<A, R>
impl<A, R> Default for FunctionalPluginAction<A, R>
source§impl<A, R> PluginAction<A, R, HashMap<String, R, RandomState>> for FunctionalPluginAction<A, R>
impl<A, R> PluginAction<A, R, HashMap<String, R, RandomState>> for FunctionalPluginAction<A, R>
source§fn run(
&self,
action_data: A,
plugin_data: &HashMap<String, Box<dyn Any + Send + Sync>>
) -> Result<HashMap<String, R>, PluginError>
fn run( &self, action_data: A, plugin_data: &HashMap<String, Box<dyn Any + Send + Sync>> ) -> Result<HashMap<String, R>, PluginError>
Runs the action. This takes data that the action should expect, along
with a map of plugins to their data. Read more
source§fn register_plugin(
&mut self,
name: &str,
runner: impl Fn(&A, &(dyn Any + Send + Sync)) -> Result<R, Box<dyn Error + Send + Sync>> + Send + Sync + 'static
)
fn register_plugin( &mut self, name: &str, runner: impl Fn(&A, &(dyn Any + Send + Sync)) -> Result<R, Box<dyn Error + Send + Sync>> + Send + Sync + 'static )
Registers a plugin that takes this action. Read more
source§fn register_plugin_box(&mut self, name: &str, runner: Runner<A, R>)
fn register_plugin_box(&mut self, name: &str, runner: Runner<A, R>)
Same as
.register_plugin()
, but takes a prepared runner in a Box
.Auto Trait Implementations§
impl<A, R> !RefUnwindSafe for FunctionalPluginAction<A, R>
impl<A, R> Send for FunctionalPluginAction<A, R>
impl<A, R> Sync for FunctionalPluginAction<A, R>
impl<A, R> Unpin for FunctionalPluginAction<A, R>
impl<A, R> !UnwindSafe for FunctionalPluginAction<A, R>
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