Function combine::parser::combinator::lazy [−][src]
pub fn lazy<Input, P, R>(p: P) -> Lazy<P> where
Input: Stream,
P: FnMut() -> R,
R: Parser<Input>,
Expand description
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.