我正在使用GumTree将Java文件解析为ITree,这是GumTree的表示AST的数据结构。然后,我通过对其执行操作来修改ITree,这些操作是GumTree的插入,更新(重命名等),删除和移动的表示。然后,我想解析生成的修改后的ITree。换句话说,我正在尝试漂亮地打印AST。
我已经查看了ITree方法(core / src / gumtreediff / tree),并尝试了toPrettyString,但这只是返回了字符串“ 15”,它是树(编译单元)顶部AST节点的type。
GitHub上的GumTree Wiki没有提及未解析或漂亮的打印。 Google搜索没有帮助,因为我认为GumTree太晦涩难懂。
想知道我是否应该“只是”编写自己的解析器。
我正在使用GumTree 2.0.0版。
最佳答案
不确定这是否是您要查找的内容,但是有一个内置方法
toTreeString()
这将返回树的多级缩进版本。