pub trait CardinalPluginExecutor: Send + Sync {
// Provided methods
fn get_plugin_container<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_session: &'life1 mut Session,
req_ctx: &'life2 mut RequestContext,
) -> Pin<Box<dyn Future<Output = Result<Arc<PluginContainer>, CardinalError>> + Send + 'async_trait>>
where Self: Send + Sync + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn can_run_plugin<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_binding_id: &'life1 str,
_session: &'life2 mut Session,
_req_ctx: &'life3 mut RequestContext,
) -> Pin<Box<dyn Future<Output = Result<bool, BError>> + Send + 'async_trait>>
where Self: Send + Sync + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait { ... }
fn run_request_filter<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
name: &'life1 str,
session: &'life2 mut Session,
req_ctx: &'life3 mut RequestContext,
) -> Pin<Box<dyn Future<Output = Result<MiddlewareResult, CardinalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait { ... }
fn run_response_filter<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
name: &'life1 str,
session: &'life2 mut Session,
req_ctx: &'life3 mut RequestContext,
response: &'life4 mut ResponseHeader,
) -> Pin<Box<dyn Future<Output = Result<(), CardinalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait { ... }
}Provided Methods§
fn get_plugin_container<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _session: &'life1 mut Session, req_ctx: &'life2 mut RequestContext, ) -> Pin<Box<dyn Future<Output = Result<Arc<PluginContainer>, CardinalError>> + Send + 'async_trait>>
fn can_run_plugin<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, _binding_id: &'life1 str, _session: &'life2 mut Session, _req_ctx: &'life3 mut RequestContext, ) -> Pin<Box<dyn Future<Output = Result<bool, BError>> + Send + 'async_trait>>
fn run_request_filter<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
name: &'life1 str,
session: &'life2 mut Session,
req_ctx: &'life3 mut RequestContext,
) -> Pin<Box<dyn Future<Output = Result<MiddlewareResult, CardinalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn run_response_filter<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
name: &'life1 str,
session: &'life2 mut Session,
req_ctx: &'life3 mut RequestContext,
response: &'life4 mut ResponseHeader,
) -> Pin<Box<dyn Future<Output = Result<(), CardinalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".