[−][src]Trait nom::Parser
all nom parsers implement ths trait
Required methods
fn parse(&mut self, input: I) -> IResult<I, O, E>
a parser takes in input type, and returns a Result
containing
either the remaining input and the output value, or an error
Provided methods
fn map<G, O2>(self, g: G) -> Map<Self, G, O> where
G: Fn(O) -> O2,
Self: Sized,
G: Fn(O) -> O2,
Self: Sized,
maps a function over the result of a parser
fn flat_map<G, H, O2>(self, g: G) -> FlatMap<Self, G, O> where
G: Fn(O) -> H,
H: Parser<I, O2, E>,
Self: Sized,
G: Fn(O) -> H,
H: Parser<I, O2, E>,
Self: Sized,
creates a second parser from the output of the first one, then apply over the rest of the input
fn and_then<G, O2>(self, g: G) -> AndThen<Self, G, O> where
G: Parser<O, O2, E>,
Self: Sized,
G: Parser<O, O2, E>,
Self: Sized,
applies a second parser over the output of the first one
fn and<G, O2>(self, g: G) -> And<Self, G> where
G: Parser<I, O2, E>,
Self: Sized,
G: Parser<I, O2, E>,
Self: Sized,
applies a second parser after the first one, return their results as a tuple
fn or<G>(self, g: G) -> Or<Self, G> where
G: Parser<I, O, E>,
Self: Sized,
G: Parser<I, O, E>,
Self: Sized,
applies a second parser over the input if the first one failed
Implementors
impl<'a, I, O, E, F> Parser<I, O, E> for F where
F: FnMut(I) -> IResult<I, O, E> + 'a,
[src]
F: FnMut(I) -> IResult<I, O, E> + 'a,