clang-tools 19.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
[legend]

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 485 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.

Parameters
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 old.cc.
SMThe SourceManager.

Definition at line 690 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 492 of file Move.cpp.

References Decl, and Loc.

◆ getMovedDecls()

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

Definition at line 143 of file Move.h.

◆ getUnremovedDeclsInOldHeader()

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

Definition at line 150 of file Move.h.

◆ onEndOfTranslationUnit()

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

◆ registerMatchers()

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

◆ run()

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

Definition at line 663 of file Move.cpp.


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