如何修改ANTLR4中的解析树?

时间:2013-07-12 07:56:22

标签: antlr4

我使用ANTLR4编写Fortran解析。现在我得到了解析树(ANTLR4中没有AST)。我的下一步工作是根据我的需要修改解析树,例如插入新的数据声明语句和替换当前的语句。我在ANTLR java API文档中查找了addChild,但在RuleNode中似乎没有这样的方法。那我该怎么办?

1 个答案:

答案 0 :(得分:0)

一种方法是将代码嵌入语法文件中。这让事情变得很乱。

另一种方法是在单独的文件中编写类,在@parser::members{...}部分或规则的操作部分中创建所需的对象,并使用它们从语法中获取详细信息。这样,您就可以从语法中获取信息,并且可以使用类对数据进行建模。

祝你好运!