[][src]Trait nommy::Process

pub trait Process {
    type Output;
    fn process(self) -> Self::Output;
}

Process is a standard interface to map a generated AST from the output of Parse::parse. All types that implement Parse should implement this trait.

Associated Types

Loading content...

Required methods

fn process(self) -> Self::Output[src]

Loading content...

Implementations on Foreign Types

impl<P: Process> Process for Option<P>[src]

type Output = Option<P::Output>

impl<P: Process> Process for Vec<P>[src]

type Output = Vec<P::Output>

impl<T1, T2> Process for (T1, T2) where
    T1: Process,
    T2: Process
[src]

type Output = (T1::Output, T2::Output)

impl<T1, T2, T3> Process for (T1, T2, T3) where
    T1: Process,
    T2: Process,
    T3: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output)

impl<T1, T2, T3, T4> Process for (T1, T2, T3, T4) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output)

impl<T1, T2, T3, T4, T5> Process for (T1, T2, T3, T4, T5) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output)

impl<T1, T2, T3, T4, T5, T6> Process for (T1, T2, T3, T4, T5, T6) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output)

impl<T1, T2, T3, T4, T5, T6, T7> Process for (T1, T2, T3, T4, T5, T6, T7) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process,
    T7: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output, T7::Output)

impl<T1, T2, T3, T4, T5, T6, T7, T8> Process for (T1, T2, T3, T4, T5, T6, T7, T8) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process,
    T7: Process,
    T8: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output, T7::Output, T8::Output)

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9> Process for (T1, T2, T3, T4, T5, T6, T7, T8, T9) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process,
    T7: Process,
    T8: Process,
    T9: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output, T7::Output, T8::Output, T9::Output)

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Process for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process,
    T7: Process,
    T8: Process,
    T9: Process,
    T10: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output, T7::Output, T8::Output, T9::Output, T10::Output)

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Process for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process,
    T7: Process,
    T8: Process,
    T9: Process,
    T10: Process,
    T11: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output, T7::Output, T8::Output, T9::Output, T10::Output, T11::Output)

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Process for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) where
    T1: Process,
    T2: Process,
    T3: Process,
    T4: Process,
    T5: Process,
    T6: Process,
    T7: Process,
    T8: Process,
    T9: Process,
    T10: Process,
    T11: Process,
    T12: Process
[src]

type Output = (T1::Output, T2::Output, T3::Output, T4::Output, T5::Output, T6::Output, T7::Output, T8::Output, T9::Output, T10::Output, T11::Output, T12::Output)

Loading content...

Implementors

impl Process for Dot[src]

type Output = Self

impl Process for GThan[src]

type Output = Self

impl Process for LBrace[src]

type Output = Self

impl Process for LBracket[src]

type Output = Self

impl Process for LParen[src]

type Output = Self

impl Process for LThan[src]

type Output = Self

impl Process for RBrace[src]

type Output = Self

impl Process for RBracket[src]

type Output = Self

impl Process for RParen[src]

type Output = Self

impl<P: Process> Process for Vec1<P>[src]

type Output = Vec<P::Output>

impl<P: Process, Suffix> Process for SuffixedBy<P, Suffix>[src]

type Output = P::Output

impl<Prefix, P: Process> Process for PrefixedBy<Prefix, P>[src]

type Output = P::Output

impl<Prefix, P: Process, Suffix> Process for SurroundedBy<Prefix, P, Suffix>[src]

type Output = P::Output

Loading content...