1
随着antlr4我可以标注这样的规则选择:如何标记具有相同优先级别的表达式替代方法?
e : e '*' e # Mult
| e '+' e # Add
| INT # Int
;
据我了解,在上面的规则,MULT具有更高的优先级高于添加因为MULT到来之前添加替代品的清单。
因此,举例来说,如果我写的:
e : e '*' e # Mult
| e ('+'|'-') e # Add
| INT # Int
;
在4 - 2
在1 + 2
和-
的+
具有相同的优先级。 但是,现在替代方案不在顶层。有没有一种方法可以分别标记规则e '+' e # Add
和e '-' e #Sub
,同时还有两个替代方案具有相同的优先级别?