#include "clang/Tooling/Refactoring/Rename/USRFinder.h"
#include "clang/AST/AST.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/RecursiveASTVisitor.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Index/USRGeneration.h"
#include "clang/Lex/Lexer.h"
#include "clang/Tooling/Refactoring/RecursiveSymbolVisitor.h"
#include "llvm/ADT/SmallVector.h"
usingnamespacellvm;
namespace clang {
namespace tooling {
namespace {
class NamedDeclOccurrenceFindingVisitor
: public RecursiveSymbolVisitor<NamedDeclOccurrenceFindingVisitor> { … };
}
const NamedDecl *getNamedDeclAt(const ASTContext &Context,
const SourceLocation Point) { … }
namespace {
class NamedDeclFindingVisitor
: public RecursiveASTVisitor<NamedDeclFindingVisitor> { … };
}
const NamedDecl *getNamedDeclFor(const ASTContext &Context,
const std::string &Name) { … }
std::string getUSRForDecl(const Decl *Decl) { … }
}
}