[−][src]Trait higher::Lift3
Lift3
extends Lift
to let you construct two types T<B>
and T<C>
from
a type T<A>
.
T<B>
can be found at <T<A> as Lift3<A, B, C>>::Target2
, and T<C>
at
<T<A> as Lift<A, B>>::Target1
.
The naming convention is that the Target
s are numbered from right to left.
Associated Types
type Target2
Provided methods
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
Self::Target2: Lift<B, C>,
Implementations on Foreign Types
impl<A, B, C> Lift3<A, B, C> for Option<A>
[src]
type Target2 = Option<B>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C, E> Lift3<A, B, C> for Result<A, E>
[src]
type Target2 = Result<B, E>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C> Lift3<A, B, C> for Vec<A>
[src]
type Target2 = Vec<B>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C, S> Lift3<A, B, C> for HashSet<A, S>
[src]
type Target2 = HashSet<B, S>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C> Lift3<A, B, C> for BTreeSet<A>
[src]
type Target2 = BTreeSet<B>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C> Lift3<A, B, C> for VecDeque<A>
[src]
type Target2 = VecDeque<B>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C> Lift3<A, B, C> for LinkedList<A>
[src]
type Target2 = LinkedList<B>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,
impl<A, B, C> Lift3<A, B, C> for BinaryHeap<A>
[src]
type Target2 = BinaryHeap<B>
fn cast(from: <Self::Target2 as Lift<B, C>>::Target1) -> Self::Target1 where
Self::Target2: Lift<B, C>,
[src]
Self::Target2: Lift<B, C>,