factorExpr method

Parser<ExpressionNode> factorExpr()
inherited

Unary operators +x, -x, ~x.

Implementation

Parser<ExpressionNode> factorExpr() => [
  seq2(
    [ref1(token, '+'), ref1(token, '-'), ref1(token, '~')].toChoiceParser(),
    ref0(factorExpr),
  ).map2((op, expr) => UnaryOpNode(operator: op.value, operand: expr)),
  ref0(powerExpr),
].toChoiceParser();