ANTLR4 grun Java 错误侦听器
ANTLR4 grun Java error listener
虽然 lexing/parsing 是 antlr 语法的输入,但我希望有一个错误异常,这些错误与使用 antlr 网站快速入门中的 grun 别名时的错误相同 window.
我用
停用了解析器和词法分析器错误侦听器
lexer.removeErrorListeners();
parser.removeErrorListeners();
因为他们报告了歧义和其他我不关心的东西,因为解析过程是成功的。
我如何设计一个错误侦听器来报告来自不成功解析的错误?
您可以创建自己的错误侦听器。只需创建一个派生自基本错误侦听器 class 的 class,创建一个实例并通过 parser.addErrorListener()
.
添加它
旁注:词法分析器通常没有错误侦听器,与 ANTLR4 一样,首选处理方式是让词法分析器错误通过始终跟随的解析器错误来处理。
虽然 lexing/parsing 是 antlr 语法的输入,但我希望有一个错误异常,这些错误与使用 antlr 网站快速入门中的 grun 别名时的错误相同 window.
我用
停用了解析器和词法分析器错误侦听器lexer.removeErrorListeners();
parser.removeErrorListeners();
因为他们报告了歧义和其他我不关心的东西,因为解析过程是成功的。
我如何设计一个错误侦听器来报告来自不成功解析的错误?
您可以创建自己的错误侦听器。只需创建一个派生自基本错误侦听器 class 的 class,创建一个实例并通过 parser.addErrorListener()
.
旁注:词法分析器通常没有错误侦听器,与 ANTLR4 一样,首选处理方式是让词法分析器错误通过始终跟随的解析器错误来处理。