clang-tools 17.0.0git
Public Member Functions | List of all members
clang::move::ClangMoveTool Class Reference

#include <Move.h>

Inheritance diagram for clang::move::ClangMoveTool:
Inheritance graph

Public Member Functions

 ClangMoveTool (ClangMoveContext *const Context, DeclarationReporter *const Reporter)
void registerMatchers (ast_matchers::MatchFinder *Finder)
void run (const ast_matchers::MatchFinder::MatchResult &Result) override
void onEndOfTranslationUnit () override
void addIncludes (llvm::StringRef IncludeHeader, bool IsAngled, llvm::StringRef SearchPath, llvm::StringRef FileName, clang::CharSourceRange IncludeFilenameRange, const SourceManager &SM)
 Add #includes from old.h/cc files.
std::vector< const NamedDecl * > & getMovedDecls ()
void addRemovedDecl (const NamedDecl *Decl)
 Add declarations being removed from old.h/cc.
llvm::SmallPtrSet< const NamedDecl *, 8 > & getUnremovedDeclsInOldHeader ()

Detailed Description

Definition at line 116 of file Move.h.

Constructor & Destructor Documentation

◆ ClangMoveTool()

clang::move::ClangMoveTool::ClangMoveTool ( ClangMoveContext *const  Context,
DeclarationReporter *const  Reporter 

Definition at line 484 of file Move.cpp.

Member Function Documentation

◆ addIncludes()

void clang::move::ClangMoveTool::addIncludes ( llvm::StringRef  IncludeHeader,
bool  IsAngled,
llvm::StringRef  SearchPath,
llvm::StringRef  FileName,
clang::CharSourceRange  IncludeFilenameRange,
const SourceManager &  SM 

Add #includes from old.h/cc files.

IncludeHeaderThe name of the file being included, as written in the source code.
IsAngledWhether the file name was enclosed in angle brackets.
SearchPathThe search path which was used to find the IncludeHeader in the file system. It can be a relative path or an absolute path.
FileNameThe name of file where the IncludeHeader comes from.
IncludeFilenameRangeThe source range for the written file name in #include (i.e. "old.h" for #include "old.h") in
SMThe SourceManager.

Definition at line 689 of file Move.cpp.

References FileName, IsAngled, clang::move::MoveDefinitionSpec::OldCC, clang::move::MoveDefinitionSpec::OldHeader, and clang::move::ClangMoveContext::Spec.

◆ addRemovedDecl()

void clang::move::ClangMoveTool::addRemovedDecl ( const NamedDecl *  Decl)

Add declarations being removed from old.h/cc.

For each declarations, the method also records the mapping relationship between the corresponding FilePath and its FileID.

Definition at line 491 of file Move.cpp.

References Decl, and Loc.

◆ getMovedDecls()

std::vector< const NamedDecl * > & clang::move::ClangMoveTool::getMovedDecls ( )

Definition at line 143 of file Move.h.

◆ getUnremovedDeclsInOldHeader()

llvm::SmallPtrSet< const NamedDecl *, 8 > & clang::move::ClangMoveTool::getUnremovedDeclsInOldHeader ( )

Definition at line 150 of file Move.h.

◆ onEndOfTranslationUnit()

void clang::move::ClangMoveTool::onEndOfTranslationUnit ( )

◆ registerMatchers()

void clang::move::ClangMoveTool::registerMatchers ( ast_matchers::MatchFinder *  Finder)

◆ run()

void clang::move::ClangMoveTool::run ( const ast_matchers::MatchFinder::MatchResult &  Result)

Definition at line 662 of file Move.cpp.

The documentation for this class was generated from the following files: