【发布时间】:2014-04-10 21:07:54
【问题描述】:
我很惭愧地问... 我为该语言编写了一个语法,类型转换从 int 到 bool,反之亦然。
logic_expr : expr NOT? OR | AND expr
| expr '|' expr SMALLER | LARGER
| NUMBER
| NUMBER_SHORT
| IDENT
| LOGIC_DEFINED
;
math_expr : expr ADD | SUB expr
| NUMBER
| NUMBER_SHORT
| IDENT
| LOGIC_FULL
;
expr : logic_expr
| math_expr
| IDENT
| LOGIC_DEFINED
| '(' expr ')'
;
但 antlr 告诉我“以下规则集是相互左递归的 [logic_expr, expr, math_expr]” 我无法理解我的语法有什么问题?
【问题讨论】:
-
也许,这会有所帮助:youtube.com/watch?v=8JdjkshB7FI
标签: antlr4 left-recursion