3 ms·
Recursive-descent would usually (there are several options) write `parse_addexpr` somewhat like this: Expr parse_addexpr() { Expr result = parse_mu
by Joker_vD 4y ago
Recursive-descent would usually (there are several options) write `parse_addexpr` somewhat like this:
Expr parse_addexpr() {
Expr result = parse_mulexpr();
while (peek_token() == TokenType.PLUS) {
expect_token(TokenType.PLUS);
Expr rhs = parse_mulexpr();
result = new AddExpr(result, rhs);
}
return result;
}
which corresponds to "addexpr: <mulexpr> (+ <mulexpr>)*" but with left-associative tree-composing.