rustmax::nom

Trait Parser

Source
pub trait Parser<Input> {
    type Output;
    type Error: ParseError<Input>;

    // Required method
    fn process<OM>(
        &mut self,
        input: Input,
    ) -> Result<(Input, <<OM as OutputMode>::Output as Mode>::Output<Self::Output>), Err<Self::Error, <<OM as OutputMode>::Error as Mode>::Output<Self::Error>>>
       where OM: OutputMode;

    // Provided methods
    fn parse(
        &mut self,
        input: Input,
    ) -> Result<(Input, Self::Output), Err<Self::Error>> { ... }
    fn parse_complete(
        &mut self,
        input: Input,
    ) -> Result<(Input, Self::Output), Err<Self::Error>> { ... }
    fn map<G, O2>(self, g: G) -> Map<Self, G>
       where G: FnMut(Self::Output) -> O2,
             Self: Sized { ... }
    fn map_res<G, O2, E2>(self, g: G) -> MapRes<Self, G>
       where G: FnMut(Self::Output) -> Result<O2, E2>,
             Self::Error: FromExternalError<Input, E2>,
             Self: Sized { ... }
    fn map_opt<G, O2>(self, g: G) -> MapOpt<Self, G>
       where G: FnMut(Self::Output) -> Option<O2>,
             Self: Sized { ... }
    fn flat_map<G, H>(self, g: G) -> FlatMap<Self, G>
       where G: FnMut(Self::Output) -> H,
             H: Parser<Input, Error = Self::Error>,
             Self: Sized { ... }
    fn and_then<G>(self, g: G) -> AndThen<Self, G>
       where G: Parser<Self::Output, Error = Self::Error>,
             Self: Sized { ... }
    fn and<G, O2>(self, g: G) -> And<Self, G>
       where G: Parser<Input, Output = O2, Error = Self::Error>,
             Self: Sized { ... }
    fn or<G>(self, g: G) -> Or<Self, G>
       where G: Parser<Input, Output = Self::Output, Error = Self::Error>,
             Self: Sized { ... }
    fn into<O2, E2>(self) -> Into<Self, O2, E2>
       where O2: From<Self::Output>,
             E2: From<Self::Error>,
             Self: Sized { ... }
}
Expand description

All nom parsers implement this trait

Required Associated Types§

Source

type Output

Type of the produced value

Source

type Error: ParseError<Input>

Error type of this parser

Required Methods§

Source

fn process<OM>( &mut self, input: Input, ) -> Result<(Input, <<OM as OutputMode>::Output as Mode>::Output<Self::Output>), Err<Self::Error, <<OM as OutputMode>::Error as Mode>::Output<Self::Error>>>
where OM: OutputMode,

A parser takes in input type, and returns a Result containing either the remaining input and the output value, or an error

Provided Methods§

Source

fn parse( &mut self, input: Input, ) -> Result<(Input, Self::Output), Err<Self::Error>>

A parser takes in input type, and returns a Result containing either the remaining input and the output value, or an error

Source

fn parse_complete( &mut self, input: Input, ) -> Result<(Input, Self::Output), Err<Self::Error>>

A parser takes in input type, and returns a Result containing either the remaining input and the output value, or an error

Source

fn map<G, O2>(self, g: G) -> Map<Self, G>
where G: FnMut(Self::Output) -> O2, Self: Sized,

Maps a function over the result of a parser

Source

fn map_res<G, O2, E2>(self, g: G) -> MapRes<Self, G>
where G: FnMut(Self::Output) -> Result<O2, E2>, Self::Error: FromExternalError<Input, E2>, Self: Sized,

Applies a function returning a Result over the result of a parser.

Source

fn map_opt<G, O2>(self, g: G) -> MapOpt<Self, G>
where G: FnMut(Self::Output) -> Option<O2>, Self: Sized,

Applies a function returning an Option over the result of a parser.

Source

fn flat_map<G, H>(self, g: G) -> FlatMap<Self, G>
where G: FnMut(Self::Output) -> H, H: Parser<Input, Error = Self::Error>, Self: Sized,

Creates a second parser from the output of the first one, then apply over the rest of the input

Source

fn and_then<G>(self, g: G) -> AndThen<Self, G>
where G: Parser<Self::Output, Error = Self::Error>, Self: Sized,

Applies a second parser over the output of the first one

Source

fn and<G, O2>(self, g: G) -> And<Self, G>
where G: Parser<Input, Output = O2, Error = Self::Error>, Self: Sized,

Applies a second parser after the first one, return their results as a tuple

Source

fn or<G>(self, g: G) -> Or<Self, G>
where G: Parser<Input, Output = Self::Output, Error = Self::Error>, Self: Sized,

Applies a second parser over the input if the first one failed

Source

fn into<O2, E2>(self) -> Into<Self, O2, E2>
where O2: From<Self::Output>, E2: From<Self::Error>, Self: Sized,

automatically converts the parser’s output and error values to another type, as long as they implement the From trait

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<I, O1, E, P1> Parser<I> for (P1,)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>,

Source§

type Output = (O1,)

Source§

type Error = E

Source§

fn process<OM>( &mut self, i: I, ) -> Result<(I, <<OM as OutputMode>::Output as Mode>::Output<<(P1,) as Parser<I>>::Output>), Err<<(P1,) as Parser<I>>::Error, <<OM as OutputMode>::Error as Mode>::Output<<(P1,) as Parser<I>>::Error>>>
where OM: OutputMode,

Source§

impl<I, O1, O2, E, P1, P2> Parser<I> for (P1, P2)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>,

Source§

type Output = (O1, O2)

Source§

type Error = E

Source§

fn process<OM>( &mut self, i: I, ) -> Result<(I, <<OM as OutputMode>::Output as Mode>::Output<<(P1, P2) as Parser<I>>::Output>), Err<<(P1, P2) as Parser<I>>::Error, <<OM as OutputMode>::Error as Mode>::Output<<(P1, P2) as Parser<I>>::Error>>>
where OM: OutputMode,

Source§

impl<I, O1, O2, O3, E, P1, P2, P3> Parser<I> for (P1, P2, P3)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>,

Source§

type Output = (O1, O2, O3)

Source§

type Error = E

Source§

fn process<OM>( &mut self, i: I, ) -> Result<(I, <<OM as OutputMode>::Output as Mode>::Output<<(P1, P2, P3) as Parser<I>>::Output>), Err<<(P1, P2, P3) as Parser<I>>::Error, <<OM as OutputMode>::Error as Mode>::Output<<(P1, P2, P3) as Parser<I>>::Error>>>
where OM: OutputMode,

Source§

impl<I, O1, O2, O3, O4, E, P1, P2, P3, P4> Parser<I> for (P1, P2, P3, P4)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>,

Source§

type Output = (O1, O2, O3, O4)

Source§

type Error = E

Source§

fn process<OM>( &mut self, i: I, ) -> Result<(I, <<OM as OutputMode>::Output as Mode>::Output<<(P1, P2, P3, P4) as Parser<I>>::Output>), Err<<(P1, P2, P3, P4) as Parser<I>>::Error, <<OM as OutputMode>::Error as Mode>::Output<<(P1, P2, P3, P4) as Parser<I>>::Error>>>
where OM: OutputMode,

Source§

impl<I, O1, O2, O3, O4, O5, E, P1, P2, P3, P4, P5> Parser<I> for (P1, P2, P3, P4, P5)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, E, P1, P2, P3, P4, P5, P6> Parser<I> for (P1, P2, P3, P4, P5, P6)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, E, P1, P2, P3, P4, P5, P6, P7> Parser<I> for (P1, P2, P3, P4, P5, P6, P7)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, E, P1, P2, P3, P4, P5, P6, P7, P8> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, E, P1, P2, P3, P4, P5, P6, P7, P8, P9> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, O16, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>, P16: Parser<I, Output = O16, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, O16, O17, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>, P16: Parser<I, Output = O16, Error = E>, P17: Parser<I, Output = O17, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, O16, O17, O18, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>, P16: Parser<I, Output = O16, Error = E>, P17: Parser<I, Output = O17, Error = E>, P18: Parser<I, Output = O18, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, O16, O17, O18, O19, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>, P16: Parser<I, Output = O16, Error = E>, P17: Parser<I, Output = O17, Error = E>, P18: Parser<I, Output = O18, Error = E>, P19: Parser<I, Output = O19, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, O16, O17, O18, O19, O20, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>, P16: Parser<I, Output = O16, Error = E>, P17: Parser<I, Output = O17, Error = E>, P18: Parser<I, Output = O18, Error = E>, P19: Parser<I, Output = O19, Error = E>, P20: Parser<I, Output = O20, Error = E>,

Source§

impl<I, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10, O11, O12, O13, O14, O15, O16, O17, O18, O19, O20, O21, E, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, P21> Parser<I> for (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, P21)
where E: ParseError<I>, P1: Parser<I, Output = O1, Error = E>, P2: Parser<I, Output = O2, Error = E>, P3: Parser<I, Output = O3, Error = E>, P4: Parser<I, Output = O4, Error = E>, P5: Parser<I, Output = O5, Error = E>, P6: Parser<I, Output = O6, Error = E>, P7: Parser<I, Output = O7, Error = E>, P8: Parser<I, Output = O8, Error = E>, P9: Parser<I, Output = O9, Error = E>, P10: Parser<I, Output = O10, Error = E>, P11: Parser<I, Output = O11, Error = E>, P12: Parser<I, Output = O12, Error = E>, P13: Parser<I, Output = O13, Error = E>, P14: Parser<I, Output = O14, Error = E>, P15: Parser<I, Output = O15, Error = E>, P16: Parser<I, Output = O16, Error = E>, P17: Parser<I, Output = O17, Error = E>, P18: Parser<I, Output = O18, Error = E>, P19: Parser<I, Output = O19, Error = E>, P20: Parser<I, Output = O20, Error = E>, P21: Parser<I, Output = O21, Error = E>,

Implementors§

Source§

impl<'a, I, F, O> Parser<I> for Fill<'a, F, O>
where I: Clone, F: Parser<I, Output = O>,

Source§

type Output = ()

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, E> Parser<I> for Digit1<E>
where I: Input, E: ParseError<I>, <I as Input>::Item: AsChar,

Source§

type Output = I

Source§

type Error = E

Source§

impl<I, E, F, G> Parser<I> for SeparatedList0<F, G>
where E: ParseError<I>, I: Clone + Input, F: Parser<I, Error = E>, G: Parser<I, Error = E>,

Source§

type Output = Vec<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, E, F, G> Parser<I> for SeparatedList1<F, G>
where E: ParseError<I>, I: Clone + Input, F: Parser<I, Error = E>, G: Parser<I, Error = E>,

Source§

type Output = Vec<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, E, F, G> Parser<I> for Preceded<F, G>
where E: ParseError<I>, F: Parser<I, Error = E>, G: Parser<I, Error = E>,

Source§

type Output = <G as Parser<I>>::Output

Source§

type Error = E

Source§

impl<I, E, F, G> Parser<I> for Terminated<F, G>
where E: ParseError<I>, F: Parser<I, Error = E>, G: Parser<I, Error = E>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = E

Source§

impl<I, E, F, G> Parser<I> for And<F, G>
where E: ParseError<I>, F: Parser<I, Error = E>, G: Parser<I, Error = E>,

Source§

type Output = (<F as Parser<I>>::Output, <G as Parser<I>>::Output)

Source§

type Error = E

Source§

impl<I, E, F, G, H> Parser<I> for FlatMap<F, G>
where E: ParseError<I>, F: Parser<I, Error = E>, G: FnMut(<F as Parser<I>>::Output) -> H, H: Parser<I, Error = E>,

Source§

type Output = <H as Parser<I>>::Output

Source§

type Error = E

Source§

impl<I, Error> Parser<I> for Take<Error>
where Error: ParseError<I>, I: Input,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error> Parser<I> for AnyChar<Error>
where Error: ParseError<I>, I: Input, <I as Input>::Item: AsChar,

Source§

type Output = char

Source§

type Error = Error

Source§

impl<I, Error> Parser<I> for Char<Error>
where Error: ParseError<I>, I: Input, <I as Input>::Item: AsChar,

Source§

type Output = char

Source§

type Error = Error

Source§

impl<I, Error> Parser<I> for MultiSpace0<Error>
where Error: ParseError<I>, I: Input, <I as Input>::Item: AsChar,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error, F> Parser<I> for SplitPosition1<F, Error>
where Error: ParseError<I>, I: Input, F: Fn(<I as Input>::Item) -> bool,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error, F> Parser<I> for SplitPosition<F, Error>
where Error: ParseError<I>, I: Input, F: Fn(<I as Input>::Item) -> bool,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error, F> Parser<I> for TakeWhileMN<F, Error>
where Error: ParseError<I>, I: Input, F: Fn(<I as Input>::Item) -> bool,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error, F, G> Parser<I> for Escaped<F, G, Error>
where Error: ParseError<I>, I: Input + Clone + Offset, <I as Input>::Item: AsChar, F: Parser<I, Error = Error>, G: Parser<I, Error = Error>,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error, F, G, ExtendItem, Output> Parser<I> for EscapedTransform<F, G, Error, ExtendItem, Output>
where I: Offset + Input + ExtendInto<Item = ExtendItem, Extender = Output> + Clone, <F as Parser<I>>::Output: ExtendInto<Item = ExtendItem, Extender = Output>, <G as Parser<I>>::Output: ExtendInto<Item = ExtendItem, Extender = Output>, <I as Input>::Item: AsChar, F: Parser<I, Error = Error>, Error: ParseError<I>, G: Parser<I, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<I, Error, F, MakeError> Parser<I> for Satisfy<F, MakeError>
where Error: ParseError<I>, I: Input, <I as Input>::Item: AsChar, F: Fn(char) -> bool, MakeError: Fn(I) -> Error,

Source§

type Output = char

Source§

type Error = Error

Source§

impl<I, Error, T> Parser<I> for Tag<T, Error>
where Error: ParseError<I>, I: Input + Compare<T>, T: Input + Clone,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, Error, T> Parser<I> for TagNoCase<T, Error>
where Error: ParseError<I>, I: Input + Compare<T>, T: Input + Clone,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, F> Parser<I> for AllConsuming<F>
where I: Input, F: Parser<I>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Cond<F>
where F: Parser<I>,

Source§

type Output = Option<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Consumed<F>
where I: Clone + Offset + Input, F: Parser<I>,

Source§

type Output = (I, <F as Parser<I>>::Output)

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Cut<F>
where F: Parser<I>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for MakeComplete<F>
where I: Clone, F: Parser<I>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Not<F>
where I: Clone, F: Parser<I>,

Source§

type Output = ()

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Opt<F>
where F: Parser<I>, I: Clone,

Source§

type Output = Option<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Peek<F>
where I: Clone, F: Parser<I>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Recognize<F>
where I: Clone + Offset + Input, F: Parser<I>,

Source§

type Output = I

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Context<F>
where I: Clone, F: Parser<I>, <F as Parser<I>>::Error: ContextError<I>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Count<F>
where I: Clone, F: Parser<I>,

Source§

type Output = Vec<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Many0<F>
where I: Clone + Input, F: Parser<I>,

Source§

type Output = Vec<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Many0Count<F>
where I: Clone + Input, F: Parser<I>,

Source§

impl<I, F> Parser<I> for Many1<F>
where I: Clone + Input, F: Parser<I>,

Source§

type Output = Vec<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F> Parser<I> for Many1Count<F>
where I: Clone + Input, F: Parser<I>,

Source§

impl<I, F> Parser<I> for ManyMN<F>
where I: Clone + Input, F: Parser<I>,

Source§

type Output = Vec<<F as Parser<I>>::Output>

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, G> Parser<I> for AndThen<F, G>
where F: Parser<I>, G: Parser<<F as Parser<I>>::Output, Error = <F as Parser<I>>::Error>,

Source§

type Output = <G as Parser<<F as Parser<I>>::Output>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, G, E> Parser<I> for LengthCount<F, G, E>
where I: Clone, F: Parser<I, Error = E>, G: Parser<I, Error = E>, <F as Parser<I>>::Output: ToUsize, E: ParseError<I>,

Source§

type Output = Vec<<G as Parser<I>>::Output>

Source§

type Error = E

Source§

impl<I, F, G, E> Parser<I> for LengthValue<F, G, E>
where I: Clone + Input, F: Parser<I, Error = E>, G: Parser<I, Error = E>, <F as Parser<I>>::Output: ToUsize, E: ParseError<I>,

Source§

type Output = <G as Parser<I>>::Output

Source§

type Error = E

Source§

impl<I, F, G, E> Parser<I> for ManyTill<F, G, E>
where I: Clone + Input, F: Parser<I, Error = E>, G: Parser<I, Error = E>, E: ParseError<I>,

Source§

type Output = (Vec<<F as Parser<I>>::Output>, <G as Parser<I>>::Output)

Source§

type Error = E

Source§

impl<I, F, G, H, Range, Res> Parser<I> for Fold<F, G, H, Range>
where I: Clone + Input, F: Parser<I>, G: FnMut(Res, <F as Parser<I>>::Output) -> Res, H: FnMut() -> Res, Range: NomRange<usize>,

Source§

type Output = Res

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, G, Init, R> Parser<I> for FoldMany0<F, G, Init, R>
where I: Clone + Input, F: Parser<I>, G: FnMut(R, <F as Parser<I>>::Output) -> R, Init: FnMut() -> R,

Source§

type Output = R

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, G, Init, R> Parser<I> for FoldMany1<F, G, Init, R>
where I: Clone + Input, F: Parser<I>, G: FnMut(R, <F as Parser<I>>::Output) -> R, Init: FnMut() -> R,

Source§

type Output = R

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, G, Init, R> Parser<I> for FoldManyMN<F, G, Init, R>
where I: Clone + Input, F: Parser<I>, G: FnMut(R, <F as Parser<I>>::Output) -> R, Init: FnMut() -> R,

Source§

type Output = R

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, G, O2> Parser<I> for Verify<F, G, O2>
where F: Parser<I>, I: Clone, G: Fn(&O2) -> bool, <F as Parser<I>>::Output: Borrow<O2>, O2: ?Sized,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, F, R, Collection> Parser<I> for Many<F, R, Collection>
where I: Clone + Input, F: Parser<I>, Collection: Extend<<F as Parser<I>>::Output> + Default, R: NomRange<usize>,

Source§

type Output = Collection

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, O2, E2, F> Parser<I> for Into<F, O2, E2>
where O2: From<<F as Parser<I>>::Output>, E2: ParseError<I> + From<<F as Parser<I>>::Error>, F: Parser<I>,

Source§

type Output = O2

Source§

type Error = E2

Source§

impl<I, O2, E2, F, G> Parser<I> for MapRes<F, G>
where I: Clone, <F as Parser<I>>::Error: FromExternalError<I, E2>, F: Parser<I>, G: FnMut(<F as Parser<I>>::Output) -> Result<O2, E2>,

Source§

type Output = O2

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, O2, E, F, G> Parser<I> for Map<F, G>
where E: ParseError<I>, F: Parser<I, Error = E>, G: FnMut(<F as Parser<I>>::Output) -> O2,

Source§

type Output = O2

Source§

type Error = E

Source§

impl<I, O2, F, G> Parser<I> for MapOpt<F, G>
where I: Clone, F: Parser<I>, G: FnMut(<F as Parser<I>>::Output) -> Option<O2>,

Source§

type Output = O2

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, O, E> Parser<I> for Fail<O, E>
where E: ParseError<I>,

Source§

type Output = O

Source§

type Error = E

Source§

impl<I, O, E> Parser<I> for Success<O, E>
where O: Clone, E: ParseError<I>,

Source§

type Output = O

Source§

type Error = E

Source§

impl<I, O, E, F> Parser<I> for F
where E: ParseError<I>, F: FnMut(I) -> Result<(I, O), Err<E>>,

Source§

type Output = O

Source§

type Error = E

Source§

impl<I, O, E, F, G> Parser<I> for Or<F, G>
where I: Clone, E: ParseError<I>, F: Parser<I, Output = O, Error = E>, G: Parser<I, Output = O, Error = E>,

Source§

type Output = <F as Parser<I>>::Output

Source§

type Error = <F as Parser<I>>::Error

Source§

impl<I, T, Error> Parser<I> for TakeUntil1<T, Error>
where Error: ParseError<I>, I: Input + FindSubstring<T>, T: Clone,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<I, T, Error> Parser<I> for TakeUntil<T, Error>
where Error: ParseError<I>, I: Input + FindSubstring<T>, T: Clone,

Source§

type Output = I

Source§

type Error = Error

Source§

impl<Input, Error, A, B, C, D, E, F, FnA, FnB, FnC, FnD, FnE, FnF> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, FnA, FnB, FnC, FnD, FnE, FnF, FnG> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>, FnS: Parser<Input, Output = S, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS, FnT> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS, FnT), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>, FnS: Parser<Input, Output = S, Error = Error>, FnT: Parser<Input, Output = T, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS, FnT, FnU> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS, FnT, FnU), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>, FnS: Parser<Input, Output = S, Error = Error>, FnT: Parser<Input, Output = T, Error = Error>, FnU: Parser<Input, Output = U, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, E, FnA, FnB, FnC, FnD, FnE> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD, FnE), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>,

Source§

impl<Input, Error, A, B, C, D, FnA, FnB, FnC, FnD> Parser<Input> for Permutation<(FnA, FnB, FnC, FnD), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>,

Source§

impl<Input, Error, A, B, C, FnA, FnB, FnC> Parser<Input> for Permutation<(FnA, FnB, FnC), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>,

Source§

impl<Input, Error, A, B, FnA, FnB> Parser<Input> for Permutation<(FnA, FnB), Error>
where Input: Clone, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>,

Source§

impl<Input, Output, Error, A> Parser<Input> for Choice<&mut [A]>
where Input: Clone, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A> Parser<Input> for Choice<(A,)>
where Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B> Parser<Input> for Choice<(A, B)>
where Input: Clone, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C> Parser<Input> for Choice<(A, B, C)>
where Input: Clone, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D> Parser<Input> for Choice<(A, B, C, D)>
where Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, Input: Clone,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E> Parser<Input> for Choice<(A, B, C, D, E)>
where A: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F> Parser<Input> for Choice<(A, B, C, D, E, F)>
where B: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, Input: Clone, F: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G> Parser<Input> for Choice<(A, B, C, D, E, F, G)>
where B: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, G: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H> Parser<Input> for Choice<(A, B, C, D, E, F, G, H)>
where B: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, Input: Clone, G: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I)>
where C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, H: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J)>
where C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, Input: Clone, H: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K)>
where C: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, I: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L)>
where D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, Input: Clone, I: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M)>
where D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, J: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N)>
where D: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, Input: Clone, J: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)>
where E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, K: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)>
where E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, Input: Clone, K: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, P: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)>
where E: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, L: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, P: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, Q: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)>
where F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, Input: Clone, L: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, P: Parser<Input, Output = Output, Error = Error>, Q: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, R: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)>
where F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, M: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, P: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, Q: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, R: Parser<Input, Output = Output, Error = Error>, S: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)>
where F: Parser<Input, Output = Output, Error = Error>, G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, Input: Clone, M: Parser<Input, Output = Output, Error = Error>, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>, N: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, P: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, Q: Parser<Input, Output = Output, Error = Error>, R: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, S: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, T: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<Input, Output, Error, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U> Parser<Input> for Choice<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U)>
where G: Parser<Input, Output = Output, Error = Error>, H: Parser<Input, Output = Output, Error = Error>, I: Parser<Input, Output = Output, Error = Error>, J: Parser<Input, Output = Output, Error = Error>, K: Parser<Input, Output = Output, Error = Error>, L: Parser<Input, Output = Output, Error = Error>, M: Parser<Input, Output = Output, Error = Error>, Input: Clone, Error: ParseError<Input>, N: Parser<Input, Output = Output, Error = Error>, A: Parser<Input, Output = Output, Error = Error>, O: Parser<Input, Output = Output, Error = Error>, B: Parser<Input, Output = Output, Error = Error>, P: Parser<Input, Output = Output, Error = Error>, Q: Parser<Input, Output = Output, Error = Error>, C: Parser<Input, Output = Output, Error = Error>, R: Parser<Input, Output = Output, Error = Error>, D: Parser<Input, Output = Output, Error = Error>, S: Parser<Input, Output = Output, Error = Error>, T: Parser<Input, Output = Output, Error = Error>, E: Parser<Input, Output = Output, Error = Error>, U: Parser<Input, Output = Output, Error = Error>, F: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error

Source§

impl<const N: usize, Input, Output, Error, A> Parser<Input> for Choice<[A; N]>
where Input: Clone, Error: ParseError<Input>, A: Parser<Input, Output = Output, Error = Error>,

Source§

type Output = Output

Source§

type Error = Error