Trait TryComputerRef

Source
pub trait TryComputerRef<Context, Code, Input>: IsProviderFor<TryComputerRefComponent, Context, (Code, Input)>
where Context: HasErrorType,
{ type Output; // Required method fn try_compute_ref( context: &Context, _code: PhantomData<Code>, input: &Input, ) -> Result<Self::Output, Context::Error>; }

Required Associated Types§

Required Methods§

Source

fn try_compute_ref( context: &Context, _code: PhantomData<Code>, input: &Input, ) -> Result<Self::Output, Context::Error>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<Context, Code, Input> TryComputerRef<Context, Code, Input> for UseContext
where Context: HasErrorType + CanTryComputeRef<Code, Input>,

Source§

type Output = <Context as CanTryComputeRef<Code, Input>>::Output

Source§

fn try_compute_ref( context: &Context, _code: PhantomData<Code>, input: &Input, ) -> Result<Self::Output, Context::Error>

Source§

impl<Context, Code, Input, __Components__, __Delegate__> TryComputerRef<Context, Code, Input> for UseDelegate<__Components__>
where Context: HasErrorType, __Components__: DelegateComponent<Code, Delegate = __Delegate__>, __Delegate__: TryComputerRef<Context, Code, Input>,

Source§

type Output = <__Delegate__ as TryComputerRef<Context, Code, Input>>::Output

Source§

fn try_compute_ref( context: &Context, _code: PhantomData<Code>, input: &Input, ) -> Result<Self::Output, Context::Error>

Implementors§

Source§

impl<Component, Context, Code, Input> TryComputerRef<Context, Code, Input> for Component
where Context: HasErrorType, Component: DelegateComponent<TryComputerRefComponent> + IsProviderFor<TryComputerRefComponent, Context, (Code, Input)>, Component::Delegate: TryComputerRef<Context, Code, Input>,

Source§

type Output = <<Component as DelegateComponent<TryComputerRefComponent>>::Delegate as TryComputerRef<Context, Code, Input>>::Output

Source§

impl<Context, Code, Input, Provider, Output> TryComputerRef<Context, Code, Input> for PromoteRef<Provider>
where Context: HasErrorType, Provider: for<'a> TryComputer<Context, Code, &'a Input, Output = Output>,

Source§

type Output = Output

Source§

impl<Context, Code, Input, __Components__, __Delegate__> TryComputerRef<Context, Code, Input> for UseInputDelegate<__Components__>
where Context: HasErrorType, __Components__: DelegateComponent<Input, Delegate = __Delegate__>, __Delegate__: TryComputerRef<Context, Code, Input>,

Source§

type Output = <__Delegate__ as TryComputerRef<Context, Code, Input>>::Output