pub struct MatchWithHandlers<Handlers>(pub PhantomData<Handlers>);Tuple Fields§
§0: PhantomData<Handlers>Trait Implementations§
Source§impl<Context, Code, Input, Output, Remainder, Handlers> Computer<Context, Code, Input> for MatchWithHandlers<Handlers>where
Input: HasExtractor,
DispatchMatchers<Handlers>: Computer<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract,
impl<Context, Code, Input, Output, Remainder, Handlers> Computer<Context, Code, Input> for MatchWithHandlers<Handlers>where
Input: HasExtractor,
DispatchMatchers<Handlers>: Computer<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract,
Source§impl<Context, Code: Send, Input, Output: Send, Remainder, Handlers> Handler<Context, Code, Input> for MatchWithHandlers<Handlers>where
Context: HasAsyncErrorType,
Input: HasExtractor<Extractor: Send> + Send,
DispatchMatchers<Handlers>: Handler<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract + Send,
impl<Context, Code: Send, Input, Output: Send, Remainder, Handlers> Handler<Context, Code, Input> for MatchWithHandlers<Handlers>where
Context: HasAsyncErrorType,
Input: HasExtractor<Extractor: Send> + Send,
DispatchMatchers<Handlers>: Handler<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract + Send,
Source§impl<Context, Code, Input, Output, Remainder, Handlers> TryComputer<Context, Code, Input> for MatchWithHandlers<Handlers>where
Context: HasErrorType,
Input: HasExtractor,
DispatchMatchers<Handlers>: TryComputer<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract,
impl<Context, Code, Input, Output, Remainder, Handlers> TryComputer<Context, Code, Input> for MatchWithHandlers<Handlers>where
Context: HasErrorType,
Input: HasExtractor,
DispatchMatchers<Handlers>: TryComputer<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract,
type Output = Output
fn try_compute( _context: &Context, code: PhantomData<Code>, input: Input, ) -> Result<Output, Context::Error>
impl<Context, Code, Input, Output, Remainder, Handlers> IsProviderFor<ComputerComponent, Context, (Code, Input)> for MatchWithHandlers<Handlers>where
Input: HasExtractor,
DispatchMatchers<Handlers>: IsProviderFor<ComputerComponent, Context, (Code, Input::Extractor)> + Computer<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract,
impl<Context, Code: Send, Input, Output: Send, Remainder, Handlers> IsProviderFor<HandlerComponent, Context, (Code, Input)> for MatchWithHandlers<Handlers>where
Context: HasAsyncErrorType,
Input: HasExtractor<Extractor: Send> + Send,
DispatchMatchers<Handlers>: IsProviderFor<HandlerComponent, Context, (Code, Input::Extractor)> + Handler<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract + Send,
impl<Context, Code, Input, Output, Remainder, Handlers> IsProviderFor<TryComputerComponent, Context, (Code, Input)> for MatchWithHandlers<Handlers>where
Context: HasErrorType,
Input: HasExtractor,
DispatchMatchers<Handlers>: IsProviderFor<TryComputerComponent, Context, (Code, Input::Extractor)> + TryComputer<Context, Code, Input::Extractor, Output = Result<Output, Remainder>>,
Remainder: FinalizeExtract,
Auto Trait Implementations§
impl<Handlers> Freeze for MatchWithHandlers<Handlers>
impl<Handlers> RefUnwindSafe for MatchWithHandlers<Handlers>where
Handlers: RefUnwindSafe,
impl<Handlers> Send for MatchWithHandlers<Handlers>where
Handlers: Send,
impl<Handlers> Sync for MatchWithHandlers<Handlers>where
Handlers: Sync,
impl<Handlers> Unpin for MatchWithHandlers<Handlers>where
Handlers: Unpin,
impl<Handlers> UnwindSafe for MatchWithHandlers<Handlers>where
Handlers: 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