pub struct ResultTypeCon<E> { /* private fields */ }
Trait Implementations§
Source§impl<E> Applicative for TypeCon<E>where
E: Clone,
impl<E> Applicative for TypeCon<E>where
E: Clone,
fn ap<TIn, TOut, TFunc>( f: &<TypeCon<E> as WithTypeArg<TFunc>>::Type, x: &<TypeCon<E> as WithTypeArg<TIn>>::Type, ) -> <TypeCon<E> as WithTypeArg<TOut>>::Type
fn lift2<TIn1, TIn2, TOut, TFunc>( f: TFunc, x1: &<TypeCon<E> as WithTypeArg<TIn1>>::Type, x2: &<TypeCon<E> as WithTypeArg<TIn2>>::Type, ) -> <TypeCon<E> as WithTypeArg<TOut>>::Type
Source§impl<E> Functor for TypeCon<E>where
E: Clone,
impl<E> Functor for TypeCon<E>where
E: Clone,
fn fmap<TIn, TOut, F>( f: F, x: &<TypeCon<E> as WithTypeArg<TIn>>::Type, ) -> <TypeCon<E> as WithTypeArg<TOut>>::Type
fn fmapconst<TIn, TOut>( e: &TOut, x: &<Self as WithTypeArg<TIn>>::Type, ) -> <Self as WithTypeArg<TOut>>::Type
Source§impl<E> LinearApplicative for TypeCon<E>
impl<E> LinearApplicative for TypeCon<E>
fn lap<TIn, TOut, TFunc>(
f: <TypeCon<E> as WithTypeArg<TFunc>>::Type,
x: <TypeCon<E> as WithTypeArg<TIn>>::Type,
) -> <TypeCon<E> as WithTypeArg<TOut>>::Typewhere
TFunc: FnOnce(TIn) -> TOut,
fn llift2<TIn1, TIn2, TOut, TFunc>(
f: TFunc,
x1: <TypeCon<E> as WithTypeArg<TIn1>>::Type,
x2: <TypeCon<E> as WithTypeArg<TIn2>>::Type,
) -> <TypeCon<E> as WithTypeArg<TOut>>::Typewhere
TFunc: FnOnce(TIn1, TIn2) -> TOut,
Source§impl<E> LinearFunctor for TypeCon<E>
impl<E> LinearFunctor for TypeCon<E>
fn lmap<TIn, TOut, F>(
f: F,
x: <TypeCon<E> as WithTypeArg<TIn>>::Type,
) -> <TypeCon<E> as WithTypeArg<TOut>>::Typewhere
F: Fn(TIn) -> TOut,
fn lmapconst<TIn, TOut>( e: &TOut, x: <Self as WithTypeArg<TIn>>::Type, ) -> <Self as WithTypeArg<TOut>>::Type
Source§impl<E> LinearMonad for TypeCon<E>
impl<E> LinearMonad for TypeCon<E>
fn lbind<TIn, TOut, F>( x: <TypeCon<E> as WithTypeArg<TIn>>::Type, f: F, ) -> <TypeCon<E> as WithTypeArg<TOut>>::Type
fn lbind_ignore<TIn, TOut>( x: <Self as WithTypeArg<TIn>>::Type, y: &<Self as WithTypeArg<TOut>>::Type, ) -> <Self as WithTypeArg<TOut>>::Type
fn ljoin<T>( x: <Self as WithTypeArg<<Self as WithTypeArg<T>>::Type>>::Type, ) -> <Self as WithTypeArg<T>>::Type
Source§impl<E> Monad for TypeCon<E>where
E: Clone,
impl<E> Monad for TypeCon<E>where
E: Clone,
fn bind<TIn, TOut, F>( x: &<TypeCon<E> as WithTypeArg<TIn>>::Type, f: F, ) -> <TypeCon<E> as WithTypeArg<TOut>>::Type
fn bind_ignore<TIn, TOut>( x: &<Self as WithTypeArg<TIn>>::Type, y: &<Self as WithTypeArg<TOut>>::Type, ) -> <Self as WithTypeArg<TOut>>::Type
fn fjoin<T>(
x: &<Self as WithTypeArg<<Self as WithTypeArg<T>>::Type>>::Type,
) -> <Self as WithTypeArg<T>>::Typewhere
Self: WithTypeArg<T> + WithTypeArg<<Self as WithTypeArg<T>>::Type>,
<Self as WithTypeArg<T>>::Type: Clone,
impl<T, E> TypeApp<TypeCon<E>, T> for Result<T, E>
Auto Trait Implementations§
impl<E> Freeze for TypeCon<E>
impl<E> RefUnwindSafe for TypeCon<E>where
E: RefUnwindSafe,
impl<E> Send for TypeCon<E>where
E: Send,
impl<E> Sync for TypeCon<E>where
E: Sync,
impl<E> Unpin for TypeCon<E>where
E: Unpin,
impl<E> UnwindSafe for TypeCon<E>where
E: 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