expression method
Implementation
Parser<ValueNode> expression() =>
seq2(ref0(assignment).star(), ref0(cascadeExpression)).map2(
(assignments, expr) => assignments.reversed.fold(
expr,
(result, assign) => AssignmentNode(assign.$1, assign.$2, result),
),
);