augAssignStatement method

Parser<AugAssignNode> augAssignStatement()
inherited

Implementation

Parser<AugAssignNode> augAssignStatement() =>
    seq3(
      ref0(expression),
      [
        ref1(token, '+='),
        ref1(token, '-='),
        ref1(token, '*='),
        ref1(token, '/='),
        ref1(token, '//='),
        ref1(token, '%='),
        ref1(token, '@='),
        ref1(token, '&='),
        ref1(token, '|='),
        ref1(token, '^='),
        ref1(token, '<<='),
        ref1(token, '>>='),
        ref1(token, '**='),
      ].toChoiceParser().map((t) => t.value),
      ref0(expression),
    ).map3(
      (target, op, val) =>
          AugAssignNode(target: target, operator: op, value: val),
    );