我正在使用GumTree将 Java 文件解析为 ITree,这是表示 AST 的 GumTree 数据结构。然后,我通过在 ITree 上执行操作来修改 ITree,这些操作是 GumTree 的插入、更新(重命名等)、删除和移动的表示。然后我想解析生成的修改后的 ITree。换句话说,我正在尝试漂亮地打印 AST。
我查看了 ITree 方法 (core/src/gumtreediff/tree) 并尝试了 toPrettyString,但这只是返回了字符串“15”,即 type树的顶部 AST 节点(编译单元)。
GitHub 上的 GumTree wiki 没有提及解析或 pretty-print 。谷歌搜索没有帮助,因为我认为 GumTree 太晦涩难懂了。
想知道我是否应该“仅仅”编写自己的解解析器。
我使用的是 GumTree 2.0.0 版本。
最佳答案
不确定这是否是您要找的,但有一个内置方法
toTreeString()
这将返回树的多级缩进版本。
关于java - 如何漂亮地打印 GumTreeDiff ITree?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35848975/