Я пытался найти ответы на свое решение, но я не могу понять обобщенные решения. Не помогает и то, что я не могу понять, какие из моих элементов отображаются заглавными буквами, а какие должны быть представлены строчными буквами.
Это часть моей грамматики в Antlr:
expression
: literal
| unaryExpression
| binaryExpression
| priorityExpression
| invocation
;
binaryExpression: expression binaryOperator expression;
binaryOperator
: ADD
| SUBTRACT
| DIVIDE
| CONCAT
| EQUALS
| NOT_EQUALS
| LESS_THAN
| GREATER_THAN
| MULTIPLY
;
Как мне удалить рекурсию в binaryExpression
?