[][src]Trait lhlist::iter::CollectIntoLabeledHList

pub trait CollectIntoLabeledHList<LabelList> {
    type Output;
    fn collect_into_labeled_hlist(self) -> Self::Output;
}

Collects an iterator (either ConsIterator or ValuesIterator) into a labeled hetereogeneous cons-list with a new set of labels.

The resulting cons-list will include added label information -- it typically returns an LVCons-list. For a collecting into non-labeled lists, see CollectIntoHList.

For an example of usage, see the MapAdapter example.

Associated Types

type Output

Output type of collected list

Loading content...

Required methods

fn collect_into_labeled_hlist(self) -> Self::Output

Collects the contents of an iterator into a labeled cons-list

Loading content...

Implementors

impl<'a, A> CollectIntoLabeledHList<Nil> for ConsIterator<'a, Nil, A>[src]

impl<'a, A> CollectIntoLabeledHList<Nil> for ValuesIterator<'a, Nil, A>[src]

impl<'a, TargetL, TargetT, A, L, T> CollectIntoLabeledHList<Cons<PhantomData<TargetL>, TargetT>> for ConsIterator<'a, LVCons<L, T>, A> where
    L: Label,
    TargetL: Label,
    A: Adapter<&'a LabeledValue<L>, Output = TargetL::AssocType>,
    ConsIterator<'a, T, A>: CollectIntoLabeledHList<TargetT>, 
[src]

type Output = LVCons<TargetL, <ConsIterator<'a, T, A> as CollectIntoLabeledHList<TargetT>>::Output>

impl<'a, TargetL, TargetT, A, L, T> CollectIntoLabeledHList<Cons<PhantomData<TargetL>, TargetT>> for ValuesIterator<'a, LVCons<L, T>, A> where
    L: Label,
    TargetL: Label,
    A: Adapter<&'a L::AssocType, Output = TargetL::AssocType>,
    ValuesIterator<'a, T, A>: CollectIntoLabeledHList<TargetT>, 
[src]

type Output = LVCons<TargetL, <ValuesIterator<'a, T, A> as CollectIntoLabeledHList<TargetT>>::Output>

Loading content...