[−][src]Trait nom::Parser
All nom parsers implement this 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, O1, O2, E, F: Parser<I, O1, E>, G: Fn(O1) -> H, H: Parser<I, O2, E>> Parser<I, O2, E> for FlatMap<F, G, O1>
[src]
impl<'a, I, O1, O2, E, F: Parser<I, O1, E>, G: Fn(O1) -> O2> Parser<I, O2, E> for Map<F, G, O1>
[src]
impl<'a, I, O1, O2, E, F: Parser<I, O1, E>, G: Parser<I, O2, E>> Parser<I, (O1, O2), E> for And<F, G>
[src]
impl<'a, I, O1, O2, E, F: Parser<I, O1, E>, G: Parser<O1, O2, E>> Parser<I, O2, E> for AndThen<F, G, O1>
[src]
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,