在重构工具中获取实时变量

时间:2015-05-04 10:16:35

标签: clang libtooling

我正在编写一个带有clang libtooling的重构工具。

我需要的是根据实时变量信息重写源代码。 例如,对于函数中的每个基本块,转储其实时变量。

我知道如果我正在编写分析检查器,那将非常容易。

void checkASTCodeBody(const Decl *D, AnalysisManager& mgr,
                    BugReporter &BR) const {
if (LiveVariables* L = mgr.getAnalysis<LiveVariables>(D)) {
  L->dumpBlockLiveness(mgr.getSourceManager());
}
}

简单地调用mgr.getAnalysis(D)来获取此函数的LiveVariables。然后,转储每个区块。

但是,我正在编写一个独立的重构工具。 如何构造AnalysisManager对象?

非常感谢。

0 个答案:

没有答案