Antlr4向树添加新节点

时间:2015-03-26 10:13:02

标签: tree nodes antlr4

我正在使用antlr4从cobol代码创建一个树,我的主要目标是通过修改树来添加新代码。有没有办法修改或添加新节点到树并从这个新树生成一个新的cobol代码?

例如,如果我有一个带有

的cobol代码
DISPLAY "Hello world!".

我想修改文字" Hello world!"或添加代码

的新节点
DISPLAY "Hello again!".

然后,从这个新修改的树生成一个新的更新的cobol代码。

提前致谢!

1 个答案:

答案 0 :(得分:2)

Antlr4不支持直接修改解析树。相反,它更喜欢解析树节点的装饰。因此,在输出传递解析树时,只需检查装饰器实例以获取更新的节点值并相应地生成。