examples/math.js
function PREFIX(operatorsParser, nextParser) {
  let parser = P.lazy(() => {
    return P.seq(operatorsParser, parser).or(nextParser);
  });
  return parser;
}
function PREFIX(operatorsParser, nextParser) {
  let parser = P.lazy(() => {
    return P.seq(operatorsParser, parser).or(nextParser);
  });
  return parser;
}
function PREFIX ( operatorsParser , nextParser ) { let parser = P . lazy ( ( ) => { return P . seq ( operatorsParser , parser ) . or ( nextParser ) ; } ) ; return parser ; }
Takes a parser for the prefix operator, and a parser for the base thing being parsed, and parses as many occurrences as possible of the prefix operator. Note that the parser is created using `P.lazy` because it's recursive. It's valid for there to be zero occurrences of the prefix operator.
Takes a parser for the prefix operator and a parser for the base thing being parsed and parses as many occurrences as possible of the prefix operator . Note that the parser is created using P . lazy because it s recursive . It s valid for there to be zero occurrences of the prefix operator .