import { Parser } from '../parser'; export function lazy

(builder: () => P): P; export function lazy(builder: () => Parser): Parser { let parser: Parser = (input, output) => (parser = builder())(input, output); return (input, output) => parser(input, output); }