[][src]Trait agnes::label::Reordering

pub trait Reordering<Original> {
    type Output;
    fn reorder(orig: Original) -> Self::Output;
}

Trait for a labeled cons-list which describes a reordering of the labels in Original.

Associated Types

type Output

The values from Original, re-ordered to match the ordering of Self.

Loading content...

Required methods

fn reorder(orig: Original) -> Self::Output

Reorder Original according to the ordering of Self.

Loading content...

Implementors

impl Reordering<Nil> for Nil[src]

type Output = Nil

impl<L, V, T, TargetL, TargetV, TargetT> Reordering<Cons<Labeled<L, V>, T>> for LVCons<TargetL, TargetV, TargetT> where
    LVCons<L, V, T>: TakeElemByLabel<TargetL>,
    <LVCons<L, V, T> as TakeElemByLabel<TargetL>>::Elem: Valued,
    TargetT: Reordering<<LVCons<L, V, T> as TakeElemByLabel<TargetL>>::Rest>, 
[src]

type Output = LVCons<TargetL, <<LVCons<L, V, T> as TakeElemByLabel<TargetL>>::Elem as Valued>::Value, <TargetT as Reordering<<LVCons<L, V, T> as TakeElemByLabel<TargetL>>::Rest>>::Output>

Loading content...