ANTLR4的当前TestRig工具支持-gui选项来解析整个输入文件并以图形方式显示整个结果解析树。我们是否有可能首先获得解析树,修改它并调用一些API以图形方式显示解析树的子集/子树。
我的输入源文件很大,并且无法查看TestRig显示的标准解析树。更重要的是,我想过滤掉许多不相关的语法,并专注于验证我需要测试的那些语法。但是很难从TestRig提供的标准巨大分析树中找到一小段信息。
答案 0 :(得分:3)
您可以在解析树中的任何非终端上调用RuleContext.inspect
来查看该子集。此外,下一版本的ANTLR在树GUI上包含一个“保存到PNG”按钮,即使它不能同时显示在屏幕上,也可以保存整个树形显示。
编辑:下一个版本还包含一个更新,允许您在完整树不适合时专注于子树。