Eclipse PDT:获取ASTNode背后的源代码

时间:2012-03-28 14:34:18

标签: eclipse-plugin eclipse-pdt

我正在探索PDT SDK,以便将它用于我正在编写的Eclipse插件。

我遇到的问题是:使用扩展org.eclipse.php.internal.core.ast.visitor.AbstractVisitor的类,我可以找到具有给定名称的函数。这会返回一个FunctionDeclaration类型的对象。

来自FunctionDeclaration(或FunctionDeclaration.getAST())是否有办法取回AST本身背后的源代码?

使用FunctionDeclaration.toString()我只能获得树的类似XML的表示,这不是我想要的。

非常感谢,这个问题让我抓狂:)

1 个答案:

答案 0 :(得分:0)

以下是解决方案:

import org.eclipse.php.internal.core.ast.rewrite.ASTRewriteFlattener;
...
String functionSource = ASTRewriteFlattener.asString(foundAction, new RewriteEventStore());

抱歉,在添加上述问题之前我没有找到ASTRewriteFlattener课程。我把答案留在这里备案。