pub trait Plugin:
Any
+ Send
+ Sync {
// Provided methods
fn build<'life0, 'life1, 'async_trait>(
&'life0 self,
_app: &'life1 mut AppBuilder,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn immediately_build(&self, _app: &mut AppBuilder) { ... }
fn name(&self) -> &str { ... }
fn dependencies(&self) -> Vec<&str> { ... }
fn immediately(&self) -> bool { ... }
}
Expand description
Defined plugin interface
Provided Methods§
Sourcefn build<'life0, 'life1, 'async_trait>(
&'life0 self,
_app: &'life1 mut AppBuilder,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn build<'life0, 'life1, 'async_trait>(
&'life0 self,
_app: &'life1 mut AppBuilder,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Configures the App
to which this plugin is added.
Sourcefn immediately_build(&self, _app: &mut AppBuilder)
fn immediately_build(&self, _app: &mut AppBuilder)
Configures the App
to which this plugin is added.
The immediately plugin will not be added to the registry,
and the plugin cannot obtain components registered in the registry.
Sourcefn name(&self) -> &str
fn name(&self) -> &str
Configures a name for the Plugin
which is primarily used for checking plugin
uniqueness and debugging.
Sourcefn dependencies(&self) -> Vec<&str>
fn dependencies(&self) -> Vec<&str>
A list of plugins to depend on. The plugin will be built after the plugins in this list.
Sourcefn immediately(&self) -> bool
fn immediately(&self) -> bool
Whether the plugin should be built immediately when added