Struct frunk_core::indices::There [−][src]
pub struct There<T> { /* fields omitted */ }
Used as an index into an HList
.
There<T>
is 1 + T
.
Users should normally allow type inference to create this type.
Trait Implementations
impl<Head, Tail, FromTail, TailIndex> Selector<FromTail, There<TailIndex>> for HCons<Head, Tail> where
Tail: Selector<FromTail, TailIndex>,
[src]
impl<Head, Tail, FromTail, TailIndex> Selector<FromTail, There<TailIndex>> for HCons<Head, Tail> where
Tail: Selector<FromTail, TailIndex>,
impl<Head, Tail, FromTail, TailIndex> Plucker<FromTail, There<TailIndex>> for HCons<Head, Tail> where
Tail: Plucker<FromTail, TailIndex>,
[src]
impl<Head, Tail, FromTail, TailIndex> Plucker<FromTail, There<TailIndex>> for HCons<Head, Tail> where
Tail: Plucker<FromTail, TailIndex>,
Implementation when the pluck target is in the tail
type Remainder = HCons<Head, <Tail as Plucker<FromTail, TailIndex>>::Remainder>
What is left after you pluck the target from the Self
fn pluck(self) -> (FromTail, Self::Remainder)
[src]
fn pluck(self) -> (FromTail, Self::Remainder)
Remove an element by type from an HList. Read more
impl<Head, Tail, ValAtIx, TailIx> LiftFrom<ValAtIx, There<TailIx>> for HCons<Head, Tail> where
Head: Default,
Tail: HList + LiftFrom<ValAtIx, TailIx>,
[src]
impl<Head, Tail, ValAtIx, TailIx> LiftFrom<ValAtIx, There<TailIx>> for HCons<Head, Tail> where
Head: Default,
Tail: HList + LiftFrom<ValAtIx, TailIx>,
impl<Head, I, Tail, TailIndex> CoprodInjector<I, There<TailIndex>> for Coproduct<Head, Tail> where
Tail: CoprodInjector<I, TailIndex>,
[src]
impl<Head, I, Tail, TailIndex> CoprodInjector<I, There<TailIndex>> for Coproduct<Head, Tail> where
Tail: CoprodInjector<I, TailIndex>,
impl<Head, FromTail, Tail, TailIndex> CoproductSelector<FromTail, There<TailIndex>> for Coproduct<Head, Tail> where
Tail: CoproductSelector<FromTail, TailIndex>,
[src]
impl<Head, FromTail, Tail, TailIndex> CoproductSelector<FromTail, There<TailIndex>> for Coproduct<Head, Tail> where
Tail: CoproductSelector<FromTail, TailIndex>,
impl<Head, FromTail, Tail, TailIndex> CoproductTaker<FromTail, There<TailIndex>> for Coproduct<Head, Tail> where
Tail: CoproductTaker<FromTail, TailIndex>,
[src]
impl<Head, FromTail, Tail, TailIndex> CoproductTaker<FromTail, There<TailIndex>> for Coproduct<Head, Tail> where
Tail: CoproductTaker<FromTail, TailIndex>,
fn take(self) -> Option<FromTail>
[src]
fn take(self) -> Option<FromTail>
Retrieve an element from a coproduct by type, ignoring all others. Read more
impl<Hd, Tl, T, N> CoprodUninjector<T, There<N>> for Coproduct<Hd, Tl> where
Tl: CoprodUninjector<T, N>,
[src]
impl<Hd, Tl, T, N> CoprodUninjector<T, There<N>> for Coproduct<Hd, Tl> where
Tl: CoprodUninjector<T, N>,