pub trait SharedFunctorAny: WeakFunctorAny {
    type SharedAny<'a, A: 'a + Send + Sync + Clone>: 'a + Send + Sync + Clone
       where Self: 'a;

    // Required methods
    fn share<'a, A: 'a + Send + Sync + Clone>(
        fa: Self::FAny<'a, A>
    ) -> Self::SharedAny<'a, A>
       where Self: 'a;
    fn unshare<'a, A: 'a + Send + Sync + Clone>(
        sa: Self::SharedAny<'a, A>
    ) -> Self::FAny<'a, A>
       where Self: 'a;
}

Required Associated Types§

source

type SharedAny<'a, A: 'a + Send + Sync + Clone>: 'a + Send + Sync + Clone where Self: 'a

Required Methods§

source

fn share<'a, A: 'a + Send + Sync + Clone>( fa: Self::FAny<'a, A> ) -> Self::SharedAny<'a, A>where Self: 'a,

source

fn unshare<'a, A: 'a + Send + Sync + Clone>( sa: Self::SharedAny<'a, A> ) -> Self::FAny<'a, A>where Self: 'a,

Implementors§

source§

impl SharedFunctorAny for OptionInstance

§

type SharedAny<'a, A: 'a + Send + Sync + Clone> = <OptionInstance as WeakFunctorAny>::FAny<'a, A> where Self: 'a

source§

impl SharedFunctorAny for SoloInstance

§

type SharedAny<'a, A: 'a + Send + Sync + Clone> = <SoloInstance as WeakFunctorAny>::FAny<'a, A> where Self: 'a

source§

impl<E: Send + Sync + Clone> SharedFunctorAny for EffectInstance<E>

§

type SharedAny<'a, A: 'a + Send + Sync + Clone> = <EffectInstance<E> as WeakFunctorAny>::FAny<'a, A> where Self: 'a

source§

impl<E: Send + Sync + Clone> SharedFunctorAny for ResultInstance<E>

§

type SharedAny<'a, A: 'a + Send + Sync + Clone> = <ResultInstance<E> as WeakFunctorAny>::FAny<'a, A> where Self: 'a