pub struct Composed<A, B, C, M1, M2> { /* private fields */ }Expand description
Sequential composition: A -> B followed by B -> C gives A -> C.
Requires Mid: Clone because the intermediate value must be
available both to the second morphism and (optionally) to the
composed invariant check.
Implementations§
Trait Implementations§
Source§impl<A, B, C, M1, M2> ProvenMorphism<A, C> for Composed<A, B, C, M1, M2>where
M1: ProvenMorphism<A, B>,
M2: ProvenMorphism<B, C>,
impl<A, B, C, M1, M2> ProvenMorphism<A, C> for Composed<A, B, C, M1, M2>where
M1: ProvenMorphism<A, B>,
M2: ProvenMorphism<B, C>,
Auto Trait Implementations§
impl<A, B, C, M1, M2> Freeze for Composed<A, B, C, M1, M2>
impl<A, B, C, M1, M2> RefUnwindSafe for Composed<A, B, C, M1, M2>where
M1: RefUnwindSafe,
M2: RefUnwindSafe,
impl<A, B, C, M1, M2> Send for Composed<A, B, C, M1, M2>
impl<A, B, C, M1, M2> Sync for Composed<A, B, C, M1, M2>
impl<A, B, C, M1, M2> Unpin for Composed<A, B, C, M1, M2>
impl<A, B, C, M1, M2> UnsafeUnpin for Composed<A, B, C, M1, M2>where
M1: UnsafeUnpin,
M2: UnsafeUnpin,
impl<A, B, C, M1, M2> UnwindSafe for Composed<A, B, C, M1, M2>where
M1: UnwindSafe,
M2: 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