【发布时间】:2016-03-07 16:31:51
【问题描述】:
我正在使用GumTree 将Java 文件解析为ITree,它是代表AST 的GumTree 数据结构。然后我通过对其执行操作来修改 ITree,这些操作是 GumTree 对插入、更新(重命名等)、删除和移动的表示。然后我想对生成的修改后的 ITree 进行解析。换句话说,我正在尝试漂亮地打印 AST。
我查看了 ITree 方法 (core/src/gumtreediff/tree) 并尝试了 toPrettyString,但它只返回了字符串“15”,它是树的顶部 AST 节点的type(一个编译单元)。
GitHub 上的 GumTree wiki 没有提到反解析或漂亮的打印。谷歌搜索没有帮助,因为我认为 GumTree 太晦涩难懂了。
想知道我是否应该“只”编写自己的解析器。
我正在使用 GumTree 2.0.0 版。
【问题讨论】:
-
目前正在实现一个反解析器。我希望尽快将此功能添加到 GumTree。
-
你曾经能够让它工作吗? GumTree 现在是否支持反解析,或者是否有一些替代的具体语法树可以保留源代码格式?
标签: java parsing open-source abstract-syntax-tree pretty-print