ANTLR无法处理的左递归规则
创始人
2024-11-08 10:00:20
0

如果 ANTLR 无法处理的规则在语法上本质上属于左递归规则,那么可以尝试使用 ANTLR 递归下降解析器实现该规则。具体做法是将该规则转换为等效但可被 ANTLR 处理的非左递归形式。下面是一个包含代码示例的

对于以下面的规则为例:

expr: expr '+' term | term; term: term '*' factor | factor; factor: '(' expr ')' | ID;

其中,expr 以及 term 均为左递归规则,无法直接由 ANTLR 处理。可以使用下列方法,将其转为非左递归形式:

expr: term ( '+' term ); term: factor ( '' factor )*; factor: '(' expr ')' | ID;

在上述改写后,每一个规则都没有左递归了。在代码实现时,使用递归下降解析器库会更容易。

相关内容

热门资讯

分享透视!aapoker怎么提... 分享透视!aapoker怎么提高中牌率,hhpoker软件靠谱吗,模块教程(有挂方法)-哔哩哔哩一、...
专业透视!pokemmo脚本最... 专业透视!pokemmo脚本最新版,wpk真的有透视嘛,技法教程(有挂助手)-哔哩哔哩1、任何pok...
曝光透视!pokemmo内置修... 曝光透视!pokemmo内置修改器,we-poker辅助,资料教程(有挂秘诀)-哔哩哔哩;该软件可以...
分享透视!hhpoker透视脚... 分享透视!hhpoker透视脚本视频,aa poker辅助,教材教程(有挂透明挂)-哔哩哔哩;1、h...
解密透视!模拟器打开hhpok... 解密透视!模拟器打开hhpoker,wepokerh5破解,妙招教程(有挂规律)-哔哩哔哩1、许多玩...
必备透视!werplan怎么作... 必备透视!werplan怎么作必弊,wepoker免费脚本,指引教程(详细教程)-哔哩哔哩1、在we...
关于透视!wejoker黑侠辅... 关于透视!wejoker黑侠辅助器,hhpoker德州牛仔视频,绝活教程(有挂秘籍)-哔哩哔哩1、h...
专业透视!竞技联盟辅助,new... 专业透视!竞技联盟辅助,newpoker脚本,诀窍教程(有挂助手)-哔哩哔哩竞技联盟辅助是不是有人用...
详细透视!wepoker辅助软... 详细透视!wepoker辅助软件价格,悦扑克脚本,举措教程(新版有挂)-哔哩哔哩wepoker辅助软...
科普透视!wepoker底牌透... 科普透视!wepoker底牌透视脚本,哈糖大菠萝能开挂吗,经验教程(有挂教学)-哔哩哔哩1、实时哈糖...