pub struct PropagatingProcessWitness<S, C>(/* private fields */);Trait Implementations§
Source§impl<S, C> Applicative<PropagatingProcessWitness<S, C>> for PropagatingProcessWitness<S, C>
impl<S, C> Applicative<PropagatingProcessWitness<S, C>> for PropagatingProcessWitness<S, C>
Source§impl<S, C> Functor<PropagatingProcessWitness<S, C>> for PropagatingProcessWitness<S, C>
impl<S, C> Functor<PropagatingProcessWitness<S, C>> for PropagatingProcessWitness<S, C>
Source§fn fmap<A, B, Func>(
m_a: <PropagatingProcessWitness<S, C> as HKT>::Type<A>,
f: Func,
) -> <PropagatingProcessWitness<S, C> as HKT>::Type<B>where
A: Satisfies<<Self as HKT>::Constraint>,
B: Satisfies<<Self as HKT>::Constraint>,
Func: FnOnce(A) -> B,
fn fmap<A, B, Func>(
m_a: <PropagatingProcessWitness<S, C> as HKT>::Type<A>,
f: Func,
) -> <PropagatingProcessWitness<S, C> as HKT>::Type<B>where
A: Satisfies<<Self as HKT>::Constraint>,
B: Satisfies<<Self as HKT>::Constraint>,
Func: FnOnce(A) -> B,
Source§impl<S, C> HKT for PropagatingProcessWitness<S, C>
impl<S, C> HKT for PropagatingProcessWitness<S, C>
Source§type Constraint = NoConstraint
type Constraint = NoConstraint
The constraint on inner types. Use
NoConstraint for fully polymorphic.Source§type Type<T> = CausalEffectPropagationProcess<T, S, C, CausalityError, EffectLog>
type Type<T> = CausalEffectPropagationProcess<T, S, C, CausalityError, EffectLog>
The Generic Associated Type (GAT) that represents the type constructor.
The
<T> is the “hole” in the type constructor (e.g., Option<T>). Read moreSource§impl<S, C> Monad<PropagatingProcessWitness<S, C>> for PropagatingProcessWitness<S, C>
impl<S, C> Monad<PropagatingProcessWitness<S, C>> for PropagatingProcessWitness<S, C>
Source§fn bind<A, B, Func>(
m_a: <Self as HKT>::Type<A>,
f: Func,
) -> <Self as HKT>::Type<B>where
A: Satisfies<<Self as HKT>::Constraint>,
B: Satisfies<<Self as HKT>::Constraint>,
Func: FnMut(A) -> <Self as HKT>::Type<B>,
fn bind<A, B, Func>(
m_a: <Self as HKT>::Type<A>,
f: Func,
) -> <Self as HKT>::Type<B>where
A: Satisfies<<Self as HKT>::Constraint>,
B: Satisfies<<Self as HKT>::Constraint>,
Func: FnMut(A) -> <Self as HKT>::Type<B>,
Chains a computation from an effectful value, flattening the result.
This is the core sequencing operation of a Monad. Read more
Auto Trait Implementations§
impl<S, C> Freeze for PropagatingProcessWitness<S, C>
impl<S, C> RefUnwindSafe for PropagatingProcessWitness<S, C>where
S: RefUnwindSafe,
C: RefUnwindSafe,
impl<S, C> Send for PropagatingProcessWitness<S, C>
impl<S, C> Sync for PropagatingProcessWitness<S, C>
impl<S, C> Unpin for PropagatingProcessWitness<S, C>
impl<S, C> UnwindSafe for PropagatingProcessWitness<S, C>where
S: UnwindSafe,
C: UnwindSafe,
Blanket Implementations§
Source§impl<T, F> AliasFunctor<F> for T
impl<T, F> AliasFunctor<F> for T
Source§impl<T, F> AliasMonad<F> for T
impl<T, F> AliasMonad<F> for T
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