gpt4 book ai didi

antlr4 - 调试ANTLR4语法

转载 作者:行者123 更新时间:2023-12-01 02:28:41 31 4
gpt4 key购买 nike

我是 ANTLR 的 n00b,并通过尝试在 ANTLR4 中运行 ASN.1 解析器来做大。我目前正处于将输入文件传递给 grun 并看到诸如“第 1:12029 行在输入时没有可行的替代方案...”之类的错误的阶段。

我试图将这与我的规则中的一些问题联系起来,但通过字符数定位有问题的输入是一个挑战。 ANTLR 解析器将输入视为单行是否正常,还是由于规则问题(我在 OSX 系统上)而无法识别 EOL?如果将输入视为一行是正常的,有人可以推荐一种用于在文件中定位给定字符位置的工具吗?

最佳答案

您的代码是否仅使用 \r行尾? ANTLR 4 仅在 \n 时才增加行数并重置字符位置字符被消耗。如果您需要处理普通 \r行结尾,您需要覆盖 LexerATNSimulator.consume执行此检查。

检查完整的行尾集比检查 \n 要昂贵得多。独自一人,所以自从 \r默认实现使用 \n 很少使用行结尾以获得最佳性能。

关于antlr4 - 调试ANTLR4语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14506143/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com