我使用Antlr4来标记和解析遗留语言,我的最终目标是生成C#代码并在模拟执行遗留语言的物理硬件的运行时环境中执行此代码。
模拟器和代码生成工作得非常好。
我想从监听器生成特定的错误消息或警告消息,这可能吗?
例如,语言允许行以分号结束或不结束,如果行缺少分号,我想发出警告。
我有更多类似的场景,语言和物理硬件有许多奇怪的特征。
谢谢, 格雷格
答案 0 :(得分:0)
可能更好的方法是从解析器发出警告。在构造解析器时,有两种方法:
parser.addErrorListener(new YourErrorListener());
parser.setErrorHandler(new YourParserErrorStrategy());
错误监听器允许custom error messages。错误策略控制解析器deals with specific errors:如何与令牌流重新同步或有效插入“丢失”'令牌。