Eclipse中的ANTLR4解析树查看器

时间:2013-09-13 14:41:47

标签: eclipse antlr antlr4

尝试在Eclipse Kepler Release中查看由ANTLR4生成的方法内部的解析树的特定部分。例如,ANTLR为创建的名为FunctionDefinition的语法规则生成“进入/退出”方法。

在FunctionDefinition方法中,我能够从上下文中的子节点获取文本。有没有办法通过插件等以图形方式表示此上下文及其子节点?

1 个答案:

答案 0 :(得分:1)

解析器返回的FunctionDefinitionContext对象扩展RuleContext,因此您可以在对象上调用inspect()以图形方式查看结果。

FunctionDefinitionContext ctx = parser.functionDefinition();
Future<JDialog> futureDialog = ctx.inspect(Arrays.asList(parser.getRuleNames()));
// wait for the dialog to close (if you want)
Utils.waitForClose(futureDialog.get());