Skip to main content

BuildWithHandlers

Struct BuildWithHandlers 

Source
pub struct BuildWithHandlers<Output, Handlers>(pub PhantomData<(Output, Handlers)>);

Tuple Fields§

§0: PhantomData<(Output, Handlers)>

Trait Implementations§

Source§

impl<Context, Code, Input, Output, Builder, Handlers, Res> Computer<Context, Code, Input> for BuildWithHandlers<Output, Handlers>
where Output: HasBuilder<Builder = Builder>, PipeHandlers<Handlers>: Computer<Context, Code, Builder, Output = Res>, Res: FinalizeBuild<Target = Output>,

Source§

type Output = Output

Source§

fn compute( context: &Context, code: PhantomData<Code>, _input: Input, ) -> Self::Output

Source§

impl<Context, Code, Input, Output, Builder, Handlers, Res> Handler<Context, Code, Input> for BuildWithHandlers<Output, Handlers>
where Context: HasErrorType, Output: HasBuilder<Builder = Builder>, PipeHandlers<Handlers>: Handler<Context, Code, Builder, Output = Res>, Res: FinalizeBuild<Target = Output>,

Source§

type Output = Output

Source§

async fn handle( context: &Context, code: PhantomData<Code>, _input: Input, ) -> Result<Self::Output, Context::Error>

Source§

impl<Context, Code, Input, Output, Builder, Handlers, Res> TryComputer<Context, Code, Input> for BuildWithHandlers<Output, Handlers>
where Context: HasErrorType, Output: HasBuilder<Builder = Builder>, PipeHandlers<Handlers>: TryComputer<Context, Code, Builder, Output = Res>, Res: FinalizeBuild<Target = Output>,

Source§

type Output = Output

Source§

fn try_compute( context: &Context, code: PhantomData<Code>, _input: Input, ) -> Result<Self::Output, Context::Error>

Source§

impl<Context, Code, Input, Output, Builder, Handlers, Res> IsProviderFor<ComputerComponent, Context, (Code, Input)> for BuildWithHandlers<Output, Handlers>
where Output: HasBuilder<Builder = Builder>, PipeHandlers<Handlers>: IsProviderFor<ComputerComponent, Context, (Code, Builder)> + Computer<Context, Code, Builder, Output = Res>, Res: FinalizeBuild<Target = Output>,

Source§

impl<Context, Code, Input, Output, Builder, Handlers, Res> IsProviderFor<HandlerComponent, Context, (Code, Input)> for BuildWithHandlers<Output, Handlers>
where Context: HasErrorType, Output: HasBuilder<Builder = Builder>, PipeHandlers<Handlers>: IsProviderFor<HandlerComponent, Context, (Code, Builder)> + Handler<Context, Code, Builder, Output = Res>, Res: FinalizeBuild<Target = Output>,

Source§

impl<Context, Code, Input, Output, Builder, Handlers, Res> IsProviderFor<TryComputerComponent, Context, (Code, Input)> for BuildWithHandlers<Output, Handlers>
where Context: HasErrorType, Output: HasBuilder<Builder = Builder>, PipeHandlers<Handlers>: IsProviderFor<TryComputerComponent, Context, (Code, Builder)> + TryComputer<Context, Code, Builder, Output = Res>, Res: FinalizeBuild<Target = Output>,

Auto Trait Implementations§

§

impl<Output, Handlers> Freeze for BuildWithHandlers<Output, Handlers>

§

impl<Output, Handlers> RefUnwindSafe for BuildWithHandlers<Output, Handlers>
where Output: RefUnwindSafe, Handlers: RefUnwindSafe,

§

impl<Output, Handlers> Send for BuildWithHandlers<Output, Handlers>
where Output: Send, Handlers: Send,

§

impl<Output, Handlers> Sync for BuildWithHandlers<Output, Handlers>
where Output: Sync, Handlers: Sync,

§

impl<Output, Handlers> Unpin for BuildWithHandlers<Output, Handlers>
where Output: Unpin, Handlers: Unpin,

§

impl<Output, Handlers> UnsafeUnpin for BuildWithHandlers<Output, Handlers>

§

impl<Output, Handlers> UnwindSafe for BuildWithHandlers<Output, Handlers>
where Output: UnwindSafe, Handlers: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Builder, Source, Output> CanBuildFrom<Source> for Builder
where Source: HasFields + IntoBuilder, <Source as HasFields>::Fields: FieldsBuilder<<Source as IntoBuilder>::Builder, Builder, Output = Output>,

Source§

type Output = Output

Source§

fn build_from(self, source: Source) -> Output

Source§

impl<__Context__, Code, Input> CanCompute<Code, Input> for __Context__
where __Context__: Computer<__Context__, Code, Input>,

Source§

type Output = <__Context__ as Computer<__Context__, Code, Input>>::Output

Source§

fn compute( &self, _code: PhantomData<Code>, input: Input, ) -> <__Context__ as CanCompute<Code, Input>>::Output

Source§

impl<Source, Target, Remainder> CanDowncastFields<Target> for Source
where Target: HasFields, <Target as HasFields>::Fields: FieldsExtractor<Source, Target, Remainder = Remainder>,

Source§

type Remainder = Remainder

Source§

fn downcast_fields( self, _tag: PhantomData<Target>, ) -> Result<Target, <Source as CanDowncastFields<Target>>::Remainder>

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.