ANTLR3相互左递归规则

时间:2015-04-28 00:17:29

标签: recursion antlr antlr3 left-recursion

我在SO上找到的每个解决方案都是“切换到ANTLR4”,这不是一个真正的选择,因为我使用 // [myFraction print]; // [myFraction divide]; (这是ANTLR3,4代表“for”)。

我想建立一个属性访问规则,它应该匹配如下:

antlr4ruby

这就是我所拥有的:

variable
variable.property
variable.prop.prop
etc.

variable: NAME -> ^(VARIABLE NAME) | variable DOT NAME -> ^(ACCESS variable NAME); VARIABLE是解析器令牌供以后使用,ACCESS是一种字符串。)

这显然是左递归的,但我不知道如何解决这个问题。

0 个答案:

没有答案