pub trait Plugin: Sync + Send + Debug {
fn prepare<'life0, 'life1, 'async_trait>(
&'life0 self,
_ctx: &'life1 BundleContext
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
{ ... }
fn resolve<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_ctx: &'life1 BundleContext,
_importer: Option<&'life2 str>,
_mportee: &'life3 str
) -> Pin<Box<dyn Future<Output = Option<ResolvedId>> + Send + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
{ ... }
fn load<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_ctx: &'life1 BundleContext,
_id: &'life2 str
) -> Pin<Box<dyn Future<Output = Option<String>> + Send + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
{ ... }
}