pub struct HandlerService<F, T> { /* private fields */ }Expand description
Service wrapper for handler functions.
This struct wraps async functions and implements the Handler trait.
It uses a phantom type parameter to distinguish between different handler signatures.
You typically don’t construct this directly; use the handler() function instead.
§Type Parameters
F- The function typeT- Phantom type representing the extractor tuple
Implementations§
Trait Implementations§
Source§impl<F, Fut, Res> Handler for HandlerService<F, ()>
impl<F, Fut, Res> Handler for HandlerService<F, ()>
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1> Handler for HandlerService<F, (T1,)>where
F: Fn(T1) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
impl<F, Fut, Res, T1> Handler for HandlerService<F, (T1,)>where
F: Fn(T1) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2> Handler for HandlerService<F, (T1, T2)>where
F: Fn(T1, T2) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2> Handler for HandlerService<F, (T1, T2)>where
F: Fn(T1, T2) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2, T3> Handler for HandlerService<F, (T1, T2, T3)>where
F: Fn(T1, T2, T3) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2, T3> Handler for HandlerService<F, (T1, T2, T3)>where
F: Fn(T1, T2, T3) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2, T3, T4> Handler for HandlerService<F, (T1, T2, T3, T4)>where
F: Fn(T1, T2, T3, T4) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2, T3, T4> Handler for HandlerService<F, (T1, T2, T3, T4)>where
F: Fn(T1, T2, T3, T4) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2, T3, T4, T5> Handler for HandlerService<F, (T1, T2, T3, T4, T5)>where
F: Fn(T1, T2, T3, T4, T5) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2, T3, T4, T5> Handler for HandlerService<F, (T1, T2, T3, T4, T5)>where
F: Fn(T1, T2, T3, T4, T5) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2, T3, T4, T5, T6> Handler for HandlerService<F, (T1, T2, T3, T4, T5, T6)>where
F: Fn(T1, T2, T3, T4, T5, T6) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
T6: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2, T3, T4, T5, T6> Handler for HandlerService<F, (T1, T2, T3, T4, T5, T6)>where
F: Fn(T1, T2, T3, T4, T5, T6) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
T6: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2, T3, T4, T5, T6, T7> Handler for HandlerService<F, (T1, T2, T3, T4, T5, T6, T7)>where
F: Fn(T1, T2, T3, T4, T5, T6, T7) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
T6: FromMessage + Send + 'static,
T7: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2, T3, T4, T5, T6, T7> Handler for HandlerService<F, (T1, T2, T3, T4, T5, T6, T7)>where
F: Fn(T1, T2, T3, T4, T5, T6, T7) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
T6: FromMessage + Send + 'static,
T7: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Source§impl<F, Fut, Res, T1, T2, T3, T4, T5, T6, T7, T8> Handler for HandlerService<F, (T1, T2, T3, T4, T5, T6, T7, T8)>where
F: Fn(T1, T2, T3, T4, T5, T6, T7, T8) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
T6: FromMessage + Send + 'static,
T7: FromMessage + Send + 'static,
T8: FromMessage + Send + 'static,
impl<F, Fut, Res, T1, T2, T3, T4, T5, T6, T7, T8> Handler for HandlerService<F, (T1, T2, T3, T4, T5, T6, T7, T8)>where
F: Fn(T1, T2, T3, T4, T5, T6, T7, T8) -> Fut + Send + Sync + 'static,
Fut: Future<Output = Res> + Send + 'static,
Res: IntoResponse,
T1: FromMessage + Send + 'static,
T2: FromMessage + Send + 'static,
T3: FromMessage + Send + 'static,
T4: FromMessage + Send + 'static,
T5: FromMessage + Send + 'static,
T6: FromMessage + Send + 'static,
T7: FromMessage + Send + 'static,
T8: FromMessage + Send + 'static,
Source§fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
_message: Message,
_conn: Connection,
_state: AppState,
_extensions: Extensions,
) -> Pin<Box<dyn Future<Output = Result<Option<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Processes a message and returns an optional response. Read more
Auto Trait Implementations§
impl<F, T> Freeze for HandlerService<F, T>where
F: Freeze,
impl<F, T> RefUnwindSafe for HandlerService<F, T>where
F: RefUnwindSafe,
impl<F, T> Send for HandlerService<F, T>where
F: Send,
impl<F, T> Sync for HandlerService<F, T>where
F: Sync,
impl<F, T> Unpin for HandlerService<F, T>where
F: Unpin,
impl<F, T> UnwindSafe for HandlerService<F, T>where
F: UnwindSafe,
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