Struct peruse::parsers::BoxedParser [] [src]

pub struct BoxedParser<I: ?Sized, O> { /* fields omitted */ }

this parser solely exists to avoid insanely long compile times in rustc. When you have a fairly large parser, it's best to box it. Yes we're introducing extra dynamic dispatch, but only on a small amount. In some cases this is the only way to get rustc to not take (literally) a million years!

Trait Implementations

impl<I: ?Sized, O> Parser for BoxedParser<I, O>
[src]

impl<I: ?Sized, O> ParserCombinator for BoxedParser<I, O>
[src]

Chain this parser with another parser, creating new parser that returns a tuple of their results Read more

Chain this parser with another parser, but toss the value from this parser

Chain this parser with another parser, but toss the value from the other parser

Create a new parser that will repeat this parser until it returns an error

Map the value of this parser

Create a disjunction with another parser. If this parser produces an error, the other parser will be used

impl<I: ?Sized, O> Clone for BoxedParser<I, O>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more