Trait frunk_core::hlist::LiftFrom
[−]
[src]
pub trait LiftFrom<T, I> { fn lift_from(part: T) -> Self; }
Indexed type conversions of T -> Self
with index I
.
This is a generalized version of From
which for example allows the caller
to use default values for parts of Self
and thus "fill in the blanks".
LiftFrom
is the reciprocal of LiftInto
.
type H = Hlist![(), usize, f64, (), bool]; let x = H::lift_from(42.0); assert_eq!(x, hlist![(), 0, 42.0, (), false]); let x: H = lift_from(true); assert_eq!(x, hlist![(), 0, 0.0, (), true]);Run
Required Methods
fn lift_from(part: T) -> Self
Performs the indexed conversion.
Implementors
impl<T, Tail> LiftFrom<T, Here> for HCons<T, Tail> where
Tail: Default + HList,impl<Head, Tail, ValAtIx, TailIx> LiftFrom<ValAtIx, There<TailIx>> for HCons<Head, Tail> where
Head: Default,
Tail: HList + LiftFrom<ValAtIx, TailIx>,impl<Prefix, Suffix> LiftFrom<Prefix, Suffixed<Suffix>> for <Prefix as Add<Suffix>>::Output where
Prefix: HList + Add<Suffix>,
Suffix: Default,