[][src]Function combine::parser::combinator::lazy

pub fn lazy<Input, P, R>(p: P) -> Lazy<P> where
    Input: Stream,
    P: FnMut() -> R,
    R: Parser<Input>, 

Constructs the parser lazily on each parse_* call. Can be used to effectively reduce the size of deeply nested parsers as only the function producing the parser is stored.

NOTE: Expects that the parser returned is always the same one, if that is not the case the reported error may be wrong. If different parsers may be returned, use the factory parser instead.