diff options
author | Alex Lorenz <arphaman@gmail.com> | 2017-06-30 16:36:09 +0000 |
---|---|---|
committer | Alex Lorenz <arphaman@gmail.com> | 2017-06-30 16:36:09 +0000 |
commit | 4abbd92bf4c830549ff5536de9aa821012d76491 (patch) | |
tree | 20bac7715081f927841f1c350c176a53d4b5fc1f | |
parent | 069e5cfaf1df6c8c71eb52b6f4d9ed410c459368 (diff) | |
download | bcm5719-llvm-4abbd92bf4c830549ff5536de9aa821012d76491.tar.gz bcm5719-llvm-4abbd92bf4c830549ff5536de9aa821012d76491.zip |
[refactor] Move clang-rename into the clang repository
The core engine of clang-rename will be used for local and global renames in the
new refactoring engine, as mentioned in
http://lists.llvm.org/pipermail/cfe-dev/2017-June/054286.html.
The clang-rename tool is still supported but might get deprecated in the future.
Differential Revision: https://reviews.llvm.org/D34696
llvm-svn: 306840
-rw-r--r-- | clang-tools-extra/CMakeLists.txt | 1 | ||||
-rw-r--r-- | clang-tools-extra/clang-rename/CMakeLists.txt | 19 | ||||
-rw-r--r-- | clang-tools-extra/test/CMakeLists.txt | 1 | ||||
-rw-r--r-- | clang-tools-extra/unittests/CMakeLists.txt | 1 | ||||
-rw-r--r-- | clang/include/clang/Tooling/Refactoring/Rename/RenamingAction.h (renamed from clang-tools-extra/clang-rename/RenamingAction.h) | 14 | ||||
-rw-r--r-- | clang/include/clang/Tooling/Refactoring/Rename/USRFinder.h (renamed from clang-tools-extra/clang-rename/USRFinder.h) | 14 | ||||
-rw-r--r-- | clang/include/clang/Tooling/Refactoring/Rename/USRFindingAction.h (renamed from clang-tools-extra/clang-rename/USRFindingAction.h) | 14 | ||||
-rw-r--r-- | clang/include/clang/Tooling/Refactoring/Rename/USRLocFinder.h (renamed from clang-tools-extra/clang-rename/USRLocFinder.h) | 14 | ||||
-rw-r--r-- | clang/include/clang/module.modulemap | 3 | ||||
-rw-r--r-- | clang/lib/Tooling/Refactoring/CMakeLists.txt | 8 | ||||
-rw-r--r-- | clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp (renamed from clang-tools-extra/clang-rename/RenamingAction.cpp) | 18 | ||||
-rw-r--r-- | clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp (renamed from clang-tools-extra/clang-rename/USRFinder.cpp) | 10 | ||||
-rw-r--r-- | clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp (renamed from clang-tools-extra/clang-rename/USRFindingAction.cpp) | 12 | ||||
-rw-r--r-- | clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp (renamed from clang-tools-extra/clang-rename/USRLocFinder.cpp) | 14 | ||||
-rw-r--r-- | clang/test/CMakeLists.txt | 1 | ||||
-rw-r--r-- | clang/test/clang-rename/ClassAsTemplateArgument.cpp (renamed from clang-tools-extra/test/clang-rename/ClassAsTemplateArgument.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ClassFindByName.cpp (renamed from clang-tools-extra/test/clang-rename/ClassFindByName.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ClassReplacements.cpp (renamed from clang-tools-extra/test/clang-rename/ClassReplacements.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ClassSimpleRenaming.cpp (renamed from clang-tools-extra/test/clang-rename/ClassSimpleRenaming.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ClassTestMulti.cpp (renamed from clang-tools-extra/test/clang-rename/ClassTestMulti.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ClassTestMultiByName.cpp (renamed from clang-tools-extra/test/clang-rename/ClassTestMultiByName.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ComplexFunctionOverride.cpp (renamed from clang-tools-extra/test/clang-rename/ComplexFunctionOverride.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/ComplicatedClassType.cpp (renamed from clang-tools-extra/test/clang-rename/ComplicatedClassType.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Ctor.cpp (renamed from clang-tools-extra/test/clang-rename/Ctor.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/CtorInitializer.cpp (renamed from clang-tools-extra/test/clang-rename/CtorInitializer.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/DeclRefExpr.cpp (renamed from clang-tools-extra/test/clang-rename/DeclRefExpr.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Field.cpp (renamed from clang-tools-extra/test/clang-rename/Field.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/FunctionMacro.cpp (renamed from clang-tools-extra/test/clang-rename/FunctionMacro.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/FunctionOverride.cpp (renamed from clang-tools-extra/test/clang-rename/FunctionOverride.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/FunctionWithClassFindByName.cpp (renamed from clang-tools-extra/test/clang-rename/FunctionWithClassFindByName.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/IncludeHeaderWithSymbol.cpp (renamed from clang-tools-extra/test/clang-rename/IncludeHeaderWithSymbol.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Inputs/HeaderWithSymbol.h (renamed from clang-tools-extra/test/clang-rename/Inputs/HeaderWithSymbol.h) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Inputs/OffsetToNewName.yaml (renamed from clang-tools-extra/test/clang-rename/Inputs/OffsetToNewName.yaml) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Inputs/QualifiedNameToNewName.yaml (renamed from clang-tools-extra/test/clang-rename/Inputs/QualifiedNameToNewName.yaml) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/InvalidNewName.cpp (renamed from clang-tools-extra/test/clang-rename/InvalidNewName.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/InvalidOffset.cpp (renamed from clang-tools-extra/test/clang-rename/InvalidOffset.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/InvalidQualifiedName.cpp (renamed from clang-tools-extra/test/clang-rename/InvalidQualifiedName.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/MemberExprMacro.cpp (renamed from clang-tools-extra/test/clang-rename/MemberExprMacro.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Namespace.cpp (renamed from clang-tools-extra/test/clang-rename/Namespace.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/NoNewName.cpp (renamed from clang-tools-extra/test/clang-rename/NoNewName.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/TemplateClassInstantiation.cpp (renamed from clang-tools-extra/test/clang-rename/TemplateClassInstantiation.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/TemplateTypename.cpp (renamed from clang-tools-extra/test/clang-rename/TemplateTypename.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/TemplatedClassFunction.cpp (renamed from clang-tools-extra/test/clang-rename/TemplatedClassFunction.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/UserDefinedConversion.cpp (renamed from clang-tools-extra/test/clang-rename/UserDefinedConversion.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/Variable.cpp (renamed from clang-tools-extra/test/clang-rename/Variable.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/VariableMacro.cpp (renamed from clang-tools-extra/test/clang-rename/VariableMacro.cpp) | 0 | ||||
-rw-r--r-- | clang/test/clang-rename/YAMLInput.cpp (renamed from clang-tools-extra/test/clang-rename/YAMLInput.cpp) | 0 | ||||
-rw-r--r-- | clang/tools/CMakeLists.txt | 2 | ||||
-rw-r--r-- | clang/tools/clang-rename/CMakeLists.txt (renamed from clang-tools-extra/clang-rename/tool/CMakeLists.txt) | 2 | ||||
-rw-r--r-- | clang/tools/clang-rename/ClangRename.cpp (renamed from clang-tools-extra/clang-rename/tool/ClangRename.cpp) | 10 | ||||
-rw-r--r-- | clang/tools/clang-rename/clang-rename.el (renamed from clang-tools-extra/clang-rename/tool/clang-rename.el) | 0 | ||||
-rw-r--r-- | clang/tools/clang-rename/clang-rename.py (renamed from clang-tools-extra/clang-rename/tool/clang-rename.py) | 0 | ||||
-rw-r--r-- | clang/unittests/CMakeLists.txt | 1 | ||||
-rw-r--r-- | clang/unittests/Rename/CMakeLists.txt (renamed from clang-tools-extra/unittests/clang-rename/CMakeLists.txt) | 8 | ||||
-rw-r--r-- | clang/unittests/Rename/ClangRenameTest.h (renamed from clang-tools-extra/unittests/clang-rename/ClangRenameTest.h) | 10 | ||||
-rw-r--r-- | clang/unittests/Rename/RenameClassTest.cpp (renamed from clang-tools-extra/unittests/clang-rename/RenameClassTest.cpp) | 0 |
56 files changed, 81 insertions, 96 deletions
diff --git a/clang-tools-extra/CMakeLists.txt b/clang-tools-extra/CMakeLists.txt index ec70fd180fc..ac8f16ba4fc 100644 --- a/clang-tools-extra/CMakeLists.txt +++ b/clang-tools-extra/CMakeLists.txt @@ -1,5 +1,4 @@ add_subdirectory(clang-apply-replacements) -add_subdirectory(clang-rename) add_subdirectory(clang-reorder-fields) add_subdirectory(modularize) if(CLANG_ENABLE_STATIC_ANALYZER) diff --git a/clang-tools-extra/clang-rename/CMakeLists.txt b/clang-tools-extra/clang-rename/CMakeLists.txt deleted file mode 100644 index 84e7951e120..00000000000 --- a/clang-tools-extra/clang-rename/CMakeLists.txt +++ /dev/null @@ -1,19 +0,0 @@ -set(LLVM_LINK_COMPONENTS support) - -add_clang_library(clangRename - USRFinder.cpp - USRFindingAction.cpp - USRLocFinder.cpp - RenamingAction.cpp - - LINK_LIBS - clangAST - clangASTMatchers - clangBasic - clangIndex - clangLex - clangToolingCore - clangToolingRefactor - ) - -add_subdirectory(tool) diff --git a/clang-tools-extra/test/CMakeLists.txt b/clang-tools-extra/test/CMakeLists.txt index 3aedde585f3..16541f98470 100644 --- a/clang-tools-extra/test/CMakeLists.txt +++ b/clang-tools-extra/test/CMakeLists.txt @@ -44,7 +44,6 @@ set(CLANG_TOOLS_TEST_DEPS clang-include-fixer clang-move clang-query - clang-rename clang-reorder-fields clang-tidy find-all-symbols diff --git a/clang-tools-extra/unittests/CMakeLists.txt b/clang-tools-extra/unittests/CMakeLists.txt index f7ee0fc983a..49978d4ae28 100644 --- a/clang-tools-extra/unittests/CMakeLists.txt +++ b/clang-tools-extra/unittests/CMakeLists.txt @@ -10,6 +10,5 @@ add_subdirectory(clang-apply-replacements) add_subdirectory(clang-move) add_subdirectory(clang-query) add_subdirectory(clang-tidy) -add_subdirectory(clang-rename) add_subdirectory(clangd) add_subdirectory(include-fixer) diff --git a/clang-tools-extra/clang-rename/RenamingAction.h b/clang/include/clang/Tooling/Refactoring/Rename/RenamingAction.h index e8b98b20c50..099eaca6c42 100644 --- a/clang-tools-extra/clang-rename/RenamingAction.h +++ b/clang/include/clang/Tooling/Refactoring/Rename/RenamingAction.h @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/RenamingAction.h - Clang rename tool ----===// +//===--- RenamingAction.h - Clang refactoring library ---------------------===// // // The LLVM Compiler Infrastructure // @@ -12,8 +12,8 @@ /// //===----------------------------------------------------------------------===// -#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_RENAMING_ACTION_H -#define LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_RENAMING_ACTION_H +#ifndef LLVM_CLANG_TOOLING_REFACTOR_RENAME_RENAMING_ACTION_H +#define LLVM_CLANG_TOOLING_REFACTOR_RENAME_RENAMING_ACTION_H #include "clang/Tooling/Refactoring.h" @@ -21,7 +21,7 @@ namespace clang { class ASTConsumer; class CompilerInstance; -namespace rename { +namespace tooling { class RenamingAction { public: @@ -64,7 +64,7 @@ private: std::map<std::string, tooling::Replacements> &FileToReplaces; }; -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang -#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_RENAMING_ACTION_H +#endif // LLVM_CLANG_TOOLING_REFACTOR_RENAME_RENAMING_ACTION_H diff --git a/clang-tools-extra/clang-rename/USRFinder.h b/clang/include/clang/Tooling/Refactoring/Rename/USRFinder.h index 99ecda0dd4a..28d541af43c 100644 --- a/clang-tools-extra/clang-rename/USRFinder.h +++ b/clang/include/clang/Tooling/Refactoring/Rename/USRFinder.h @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/USRFinder.h - Clang rename tool ---------===// +//===--- USRFinder.h - Clang refactoring library --------------------------===// // // The LLVM Compiler Infrastructure // @@ -13,8 +13,8 @@ /// //===----------------------------------------------------------------------===// -#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_FINDER_H -#define LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_FINDER_H +#ifndef LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_FINDER_H +#define LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_FINDER_H #include "clang/AST/AST.h" #include "clang/AST/ASTContext.h" @@ -32,7 +32,7 @@ class Decl; class SourceLocation; class NamedDecl; -namespace rename { +namespace tooling { // Given an AST context and a point, returns a NamedDecl identifying the symbol // at the point. Returns null if nothing is found at the point. @@ -78,7 +78,7 @@ private: MatchFinder Finder; }; -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang -#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_FINDER_H +#endif // LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_FINDER_H diff --git a/clang-tools-extra/clang-rename/USRFindingAction.h b/clang/include/clang/Tooling/Refactoring/Rename/USRFindingAction.h index ac27daddff2..8aafee95bc0 100644 --- a/clang-tools-extra/clang-rename/USRFindingAction.h +++ b/clang/include/clang/Tooling/Refactoring/Rename/USRFindingAction.h @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/USRFindingAction.h - Clang rename tool --===// +//===--- USRFindingAction.h - Clang refactoring library -------------------===// // // The LLVM Compiler Infrastructure // @@ -12,8 +12,8 @@ /// //===----------------------------------------------------------------------===// -#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_FINDING_ACTION_H -#define LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_FINDING_ACTION_H +#ifndef LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_FINDING_ACTION_H +#define LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_FINDING_ACTION_H #include "clang/Basic/LLVM.h" #include "llvm/ADT/ArrayRef.h" @@ -26,7 +26,7 @@ class ASTConsumer; class CompilerInstance; class NamedDecl; -namespace rename { +namespace tooling { struct USRFindingAction { USRFindingAction(ArrayRef<unsigned> SymbolOffsets, @@ -48,7 +48,7 @@ private: bool Force; }; -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang -#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_FINDING_ACTION_H +#endif // LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_FINDING_ACTION_H diff --git a/clang-tools-extra/clang-rename/USRLocFinder.h b/clang/include/clang/Tooling/Refactoring/Rename/USRLocFinder.h index db4c4a86f7d..733ea1a6ac9 100644 --- a/clang-tools-extra/clang-rename/USRLocFinder.h +++ b/clang/include/clang/Tooling/Refactoring/Rename/USRLocFinder.h @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/USRLocFinder.h - Clang rename tool ------===// +//===--- USRLocFinder.h - Clang refactoring library -----------------------===// // // The LLVM Compiler Infrastructure // @@ -13,8 +13,8 @@ /// //===----------------------------------------------------------------------===// -#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_LOC_FINDER_H -#define LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_LOC_FINDER_H +#ifndef LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_LOC_FINDER_H +#define LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_LOC_FINDER_H #include "clang/AST/AST.h" #include "clang/Tooling/Core/Replacement.h" @@ -24,7 +24,7 @@ #include <vector> namespace clang { -namespace rename { +namespace tooling { /// Create atomic changes for renaming all symbol references which are /// identified by the USRs set to a given new name. @@ -43,7 +43,7 @@ std::vector<SourceLocation> getLocationsOfUSRs(const std::vector<std::string> &USRs, llvm::StringRef PrevName, Decl *Decl); -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang -#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_RENAME_USR_LOC_FINDER_H +#endif // LLVM_CLANG_TOOLING_REFACTOR_RENAME_USR_LOC_FINDER_H diff --git a/clang/include/clang/module.modulemap b/clang/include/clang/module.modulemap index 282c567c6e5..f7e338d9339 100644 --- a/clang/include/clang/module.modulemap +++ b/clang/include/clang/module.modulemap @@ -133,9 +133,10 @@ module Clang_StaticAnalyzer_Frontend { module Clang_Tooling { requires cplusplus umbrella "Tooling" module * { export * } - // FIXME: Exclude this header to avoid pulling all of the AST matchers + // FIXME: Exclude these headers to avoid pulling all of the AST matchers // library into clang-format. Due to inline key functions in the headers, // importing the AST matchers library gives a link dependency on the AST // matchers (and thus the AST), which clang-format should not have. exclude header "Tooling/RefactoringCallbacks.h" + exclude header "Tooling/Refactoring/Rename/USRFinder.h" } diff --git a/clang/lib/Tooling/Refactoring/CMakeLists.txt b/clang/lib/Tooling/Refactoring/CMakeLists.txt index b2f9b4f4c0c..288582fc1b6 100644 --- a/clang/lib/Tooling/Refactoring/CMakeLists.txt +++ b/clang/lib/Tooling/Refactoring/CMakeLists.txt @@ -5,8 +5,16 @@ set(LLVM_LINK_COMPONENTS add_clang_library(clangToolingRefactor AtomicChange.cpp + Rename/RenamingAction.cpp + Rename/USRFinder.cpp + Rename/USRFindingAction.cpp + Rename/USRLocFinder.cpp LINK_LIBS + clangAST + clangASTMatchers clangBasic + clangIndex + clangLex clangToolingCore ) diff --git a/clang-tools-extra/clang-rename/RenamingAction.cpp b/clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp index fac04168a0b..de6aba944a4 100644 --- a/clang-tools-extra/clang-rename/RenamingAction.cpp +++ b/clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/RenamingAction.cpp - Clang rename tool --===// +//===--- RenamingAction.cpp - Clang refactoring library -------------------===// // // The LLVM Compiler Infrastructure // @@ -12,8 +12,7 @@ /// //===----------------------------------------------------------------------===// -#include "RenamingAction.h" -#include "USRLocFinder.h" +#include "clang/Tooling/Refactoring/Rename/RenamingAction.h" #include "clang/AST/ASTConsumer.h" #include "clang/AST/ASTContext.h" #include "clang/Basic/FileManager.h" @@ -23,6 +22,7 @@ #include "clang/Lex/Preprocessor.h" #include "clang/Tooling/CommonOptionsParser.h" #include "clang/Tooling/Refactoring.h" +#include "clang/Tooling/Refactoring/Rename/USRLocFinder.h" #include "clang/Tooling/Tooling.h" #include <string> #include <vector> @@ -30,7 +30,7 @@ using namespace llvm; namespace clang { -namespace rename { +namespace tooling { class RenamingASTConsumer : public ASTConsumer { public: @@ -55,8 +55,8 @@ public: std::vector<SourceLocation> RenamingCandidates; std::vector<SourceLocation> NewCandidates; - NewCandidates = - getLocationsOfUSRs(USRs, PrevName, Context.getTranslationUnitDecl()); + NewCandidates = tooling::getLocationsOfUSRs( + USRs, PrevName, Context.getTranslationUnitDecl()); RenamingCandidates.insert(RenamingCandidates.end(), NewCandidates.begin(), NewCandidates.end()); @@ -101,7 +101,7 @@ public: for (unsigned I = 0; I < NewNames.size(); ++I) { // FIXME: Apply AtomicChanges directly once the refactoring APIs are // ready. - auto AtomicChanges = createRenameAtomicChanges( + auto AtomicChanges = tooling::createRenameAtomicChanges( USRList[I], NewNames[I], Context.getTranslationUnitDecl()); for (const auto AtomicChange : AtomicChanges) { for (const auto &Replace : AtomicChange.getReplacements()) { @@ -130,5 +130,5 @@ std::unique_ptr<ASTConsumer> QualifiedRenamingAction::newASTConsumer() { return llvm::make_unique<USRSymbolRenamer>(NewNames, USRList, FileToReplaces); } -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang diff --git a/clang-tools-extra/clang-rename/USRFinder.cpp b/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp index 901e402ac17..f36387dafdb 100644 --- a/clang-tools-extra/clang-rename/USRFinder.cpp +++ b/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/USRFinder.cpp - Clang rename tool -------===// +//===--- USRFinder.cpp - Clang refactoring library ------------------------===// // // The LLVM Compiler Infrastructure // @@ -12,7 +12,7 @@ /// //===----------------------------------------------------------------------===// -#include "USRFinder.h" +#include "clang/Tooling/Refactoring/Rename/USRFinder.h" #include "clang/AST/AST.h" #include "clang/AST/ASTContext.h" #include "clang/AST/RecursiveASTVisitor.h" @@ -23,7 +23,7 @@ using namespace llvm; namespace clang { -namespace rename { +namespace tooling { // NamedDeclFindingASTVisitor recursively visits each AST node to find the // symbol underneath the cursor. @@ -209,5 +209,5 @@ std::string getUSRForDecl(const Decl *Decl) { return std::string(Buff.data(), Buff.size()); } -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang diff --git a/clang-tools-extra/clang-rename/USRFindingAction.cpp b/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp index 515acfbd508..2769802ad2b 100644 --- a/clang-tools-extra/clang-rename/USRFindingAction.cpp +++ b/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/USRFindingAction.cpp - Clang rename tool ===// +//===--- USRFindingAction.cpp - Clang refactoring library -----------------===// // // The LLVM Compiler Infrastructure // @@ -13,8 +13,7 @@ /// //===----------------------------------------------------------------------===// -#include "USRFindingAction.h" -#include "USRFinder.h" +#include "clang/Tooling/Refactoring/Rename/USRFindingAction.h" #include "clang/AST/AST.h" #include "clang/AST/ASTConsumer.h" #include "clang/AST/ASTContext.h" @@ -27,6 +26,7 @@ #include "clang/Lex/Preprocessor.h" #include "clang/Tooling/CommonOptionsParser.h" #include "clang/Tooling/Refactoring.h" +#include "clang/Tooling/Refactoring/Rename/USRFinder.h" #include "clang/Tooling/Tooling.h" #include <algorithm> @@ -37,7 +37,7 @@ using namespace llvm; namespace clang { -namespace rename { +namespace tooling { namespace { // \brief NamedDeclFindingConsumer should delegate finding USRs of given Decl to @@ -232,5 +232,5 @@ std::unique_ptr<ASTConsumer> USRFindingAction::newASTConsumer() { ErrorOccurred); } -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang diff --git a/clang-tools-extra/clang-rename/USRLocFinder.cpp b/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp index 06afb013c51..934507fe6ea 100644 --- a/clang-tools-extra/clang-rename/USRLocFinder.cpp +++ b/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp @@ -1,4 +1,4 @@ -//===--- tools/extra/clang-rename/USRLocFinder.cpp - Clang rename tool ----===// +//===--- USRLocFinder.cpp - Clang refactoring library ---------------------===// // // The LLVM Compiler Infrastructure // @@ -8,14 +8,13 @@ //===----------------------------------------------------------------------===// /// /// \file -/// \brief Mehtods for finding all instances of a USR. Our strategy is very +/// \brief Methods for finding all instances of a USR. Our strategy is very /// simple; we just compare the USR at every relevant AST node with the one /// provided. /// //===----------------------------------------------------------------------===// -#include "USRLocFinder.h" -#include "USRFinder.h" +#include "clang/Tooling/Refactoring/Rename/USRLocFinder.h" #include "clang/AST/ASTContext.h" #include "clang/AST/RecursiveASTVisitor.h" #include "clang/Basic/LLVM.h" @@ -23,6 +22,7 @@ #include "clang/Basic/SourceManager.h" #include "clang/Lex/Lexer.h" #include "clang/Tooling/Core/Lookup.h" +#include "clang/Tooling/Refactoring/Rename/USRFinder.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/Casting.h" #include <cstddef> @@ -33,7 +33,7 @@ using namespace llvm; namespace clang { -namespace rename { +namespace tooling { namespace { @@ -505,5 +505,5 @@ createRenameAtomicChanges(llvm::ArrayRef<std::string> USRs, return AtomicChanges; } -} // namespace rename -} // namespace clang +} // end namespace tooling +} // end namespace clang diff --git a/clang/test/CMakeLists.txt b/clang/test/CMakeLists.txt index 23d23bcddcc..fa926c584f8 100644 --- a/clang/test/CMakeLists.txt +++ b/clang/test/CMakeLists.txt @@ -47,6 +47,7 @@ list(APPEND CLANG_TEST_DEPS clang-tblgen clang-offload-bundler clang-import-test + clang-rename ) if(CLANG_ENABLE_STATIC_ANALYZER) diff --git a/clang-tools-extra/test/clang-rename/ClassAsTemplateArgument.cpp b/clang/test/clang-rename/ClassAsTemplateArgument.cpp index 2e09a5b529e..2e09a5b529e 100644 --- a/clang-tools-extra/test/clang-rename/ClassAsTemplateArgument.cpp +++ b/clang/test/clang-rename/ClassAsTemplateArgument.cpp diff --git a/clang-tools-extra/test/clang-rename/ClassFindByName.cpp b/clang/test/clang-rename/ClassFindByName.cpp index 4430891ec4b..4430891ec4b 100644 --- a/clang-tools-extra/test/clang-rename/ClassFindByName.cpp +++ b/clang/test/clang-rename/ClassFindByName.cpp diff --git a/clang-tools-extra/test/clang-rename/ClassReplacements.cpp b/clang/test/clang-rename/ClassReplacements.cpp index 2b478bbf900..2b478bbf900 100644 --- a/clang-tools-extra/test/clang-rename/ClassReplacements.cpp +++ b/clang/test/clang-rename/ClassReplacements.cpp diff --git a/clang-tools-extra/test/clang-rename/ClassSimpleRenaming.cpp b/clang/test/clang-rename/ClassSimpleRenaming.cpp index 086f55736cb..086f55736cb 100644 --- a/clang-tools-extra/test/clang-rename/ClassSimpleRenaming.cpp +++ b/clang/test/clang-rename/ClassSimpleRenaming.cpp diff --git a/clang-tools-extra/test/clang-rename/ClassTestMulti.cpp b/clang/test/clang-rename/ClassTestMulti.cpp index 81e65c76065..81e65c76065 100644 --- a/clang-tools-extra/test/clang-rename/ClassTestMulti.cpp +++ b/clang/test/clang-rename/ClassTestMulti.cpp diff --git a/clang-tools-extra/test/clang-rename/ClassTestMultiByName.cpp b/clang/test/clang-rename/ClassTestMultiByName.cpp index 61b69a1bdf4..61b69a1bdf4 100644 --- a/clang-tools-extra/test/clang-rename/ClassTestMultiByName.cpp +++ b/clang/test/clang-rename/ClassTestMultiByName.cpp diff --git a/clang-tools-extra/test/clang-rename/ComplexFunctionOverride.cpp b/clang/test/clang-rename/ComplexFunctionOverride.cpp index ccf3a20e540..ccf3a20e540 100644 --- a/clang-tools-extra/test/clang-rename/ComplexFunctionOverride.cpp +++ b/clang/test/clang-rename/ComplexFunctionOverride.cpp diff --git a/clang-tools-extra/test/clang-rename/ComplicatedClassType.cpp b/clang/test/clang-rename/ComplicatedClassType.cpp index 88019530312..88019530312 100644 --- a/clang-tools-extra/test/clang-rename/ComplicatedClassType.cpp +++ b/clang/test/clang-rename/ComplicatedClassType.cpp diff --git a/clang-tools-extra/test/clang-rename/Ctor.cpp b/clang/test/clang-rename/Ctor.cpp index 9908a4123dd..9908a4123dd 100644 --- a/clang-tools-extra/test/clang-rename/Ctor.cpp +++ b/clang/test/clang-rename/Ctor.cpp diff --git a/clang-tools-extra/test/clang-rename/CtorInitializer.cpp b/clang/test/clang-rename/CtorInitializer.cpp index fed4f5b06c2..fed4f5b06c2 100644 --- a/clang-tools-extra/test/clang-rename/CtorInitializer.cpp +++ b/clang/test/clang-rename/CtorInitializer.cpp diff --git a/clang-tools-extra/test/clang-rename/DeclRefExpr.cpp b/clang/test/clang-rename/DeclRefExpr.cpp index 6462862d82a..6462862d82a 100644 --- a/clang-tools-extra/test/clang-rename/DeclRefExpr.cpp +++ b/clang/test/clang-rename/DeclRefExpr.cpp diff --git a/clang-tools-extra/test/clang-rename/Field.cpp b/clang/test/clang-rename/Field.cpp index c0e9a019e47..c0e9a019e47 100644 --- a/clang-tools-extra/test/clang-rename/Field.cpp +++ b/clang/test/clang-rename/Field.cpp diff --git a/clang-tools-extra/test/clang-rename/FunctionMacro.cpp b/clang/test/clang-rename/FunctionMacro.cpp index 6e87026ec70..6e87026ec70 100644 --- a/clang-tools-extra/test/clang-rename/FunctionMacro.cpp +++ b/clang/test/clang-rename/FunctionMacro.cpp diff --git a/clang-tools-extra/test/clang-rename/FunctionOverride.cpp b/clang/test/clang-rename/FunctionOverride.cpp index adfeb739e66..adfeb739e66 100644 --- a/clang-tools-extra/test/clang-rename/FunctionOverride.cpp +++ b/clang/test/clang-rename/FunctionOverride.cpp diff --git a/clang-tools-extra/test/clang-rename/FunctionWithClassFindByName.cpp b/clang/test/clang-rename/FunctionWithClassFindByName.cpp index 2cae09a1c24..2cae09a1c24 100644 --- a/clang-tools-extra/test/clang-rename/FunctionWithClassFindByName.cpp +++ b/clang/test/clang-rename/FunctionWithClassFindByName.cpp diff --git a/clang-tools-extra/test/clang-rename/IncludeHeaderWithSymbol.cpp b/clang/test/clang-rename/IncludeHeaderWithSymbol.cpp index cb2baee57b8..cb2baee57b8 100644 --- a/clang-tools-extra/test/clang-rename/IncludeHeaderWithSymbol.cpp +++ b/clang/test/clang-rename/IncludeHeaderWithSymbol.cpp diff --git a/clang-tools-extra/test/clang-rename/Inputs/HeaderWithSymbol.h b/clang/test/clang-rename/Inputs/HeaderWithSymbol.h index 1fe02e89786..1fe02e89786 100644 --- a/clang-tools-extra/test/clang-rename/Inputs/HeaderWithSymbol.h +++ b/clang/test/clang-rename/Inputs/HeaderWithSymbol.h diff --git a/clang-tools-extra/test/clang-rename/Inputs/OffsetToNewName.yaml b/clang/test/clang-rename/Inputs/OffsetToNewName.yaml index d8e972880f3..d8e972880f3 100644 --- a/clang-tools-extra/test/clang-rename/Inputs/OffsetToNewName.yaml +++ b/clang/test/clang-rename/Inputs/OffsetToNewName.yaml diff --git a/clang-tools-extra/test/clang-rename/Inputs/QualifiedNameToNewName.yaml b/clang/test/clang-rename/Inputs/QualifiedNameToNewName.yaml index 6e3783671df..6e3783671df 100644 --- a/clang-tools-extra/test/clang-rename/Inputs/QualifiedNameToNewName.yaml +++ b/clang/test/clang-rename/Inputs/QualifiedNameToNewName.yaml diff --git a/clang-tools-extra/test/clang-rename/InvalidNewName.cpp b/clang/test/clang-rename/InvalidNewName.cpp index e6b38e59420..e6b38e59420 100644 --- a/clang-tools-extra/test/clang-rename/InvalidNewName.cpp +++ b/clang/test/clang-rename/InvalidNewName.cpp diff --git a/clang-tools-extra/test/clang-rename/InvalidOffset.cpp b/clang/test/clang-rename/InvalidOffset.cpp index 2ae04d01e4a..2ae04d01e4a 100644 --- a/clang-tools-extra/test/clang-rename/InvalidOffset.cpp +++ b/clang/test/clang-rename/InvalidOffset.cpp diff --git a/clang-tools-extra/test/clang-rename/InvalidQualifiedName.cpp b/clang/test/clang-rename/InvalidQualifiedName.cpp index 5280e3939cc..5280e3939cc 100644 --- a/clang-tools-extra/test/clang-rename/InvalidQualifiedName.cpp +++ b/clang/test/clang-rename/InvalidQualifiedName.cpp diff --git a/clang-tools-extra/test/clang-rename/MemberExprMacro.cpp b/clang/test/clang-rename/MemberExprMacro.cpp index 56cd8d95f6e..56cd8d95f6e 100644 --- a/clang-tools-extra/test/clang-rename/MemberExprMacro.cpp +++ b/clang/test/clang-rename/MemberExprMacro.cpp diff --git a/clang-tools-extra/test/clang-rename/Namespace.cpp b/clang/test/clang-rename/Namespace.cpp index ec9630fdedb..ec9630fdedb 100644 --- a/clang-tools-extra/test/clang-rename/Namespace.cpp +++ b/clang/test/clang-rename/Namespace.cpp diff --git a/clang-tools-extra/test/clang-rename/NoNewName.cpp b/clang/test/clang-rename/NoNewName.cpp index 4f882d83b0c..4f882d83b0c 100644 --- a/clang-tools-extra/test/clang-rename/NoNewName.cpp +++ b/clang/test/clang-rename/NoNewName.cpp diff --git a/clang-tools-extra/test/clang-rename/TemplateClassInstantiation.cpp b/clang/test/clang-rename/TemplateClassInstantiation.cpp index 493d0951df5..493d0951df5 100644 --- a/clang-tools-extra/test/clang-rename/TemplateClassInstantiation.cpp +++ b/clang/test/clang-rename/TemplateClassInstantiation.cpp diff --git a/clang-tools-extra/test/clang-rename/TemplateTypename.cpp b/clang/test/clang-rename/TemplateTypename.cpp index 559ec1f9ade..559ec1f9ade 100644 --- a/clang-tools-extra/test/clang-rename/TemplateTypename.cpp +++ b/clang/test/clang-rename/TemplateTypename.cpp diff --git a/clang-tools-extra/test/clang-rename/TemplatedClassFunction.cpp b/clang/test/clang-rename/TemplatedClassFunction.cpp index 1f5b0b52ba7..1f5b0b52ba7 100644 --- a/clang-tools-extra/test/clang-rename/TemplatedClassFunction.cpp +++ b/clang/test/clang-rename/TemplatedClassFunction.cpp diff --git a/clang-tools-extra/test/clang-rename/UserDefinedConversion.cpp b/clang/test/clang-rename/UserDefinedConversion.cpp index 60f251ab448..60f251ab448 100644 --- a/clang-tools-extra/test/clang-rename/UserDefinedConversion.cpp +++ b/clang/test/clang-rename/UserDefinedConversion.cpp diff --git a/clang-tools-extra/test/clang-rename/Variable.cpp b/clang/test/clang-rename/Variable.cpp index d7e670fb43e..d7e670fb43e 100644 --- a/clang-tools-extra/test/clang-rename/Variable.cpp +++ b/clang/test/clang-rename/Variable.cpp diff --git a/clang-tools-extra/test/clang-rename/VariableMacro.cpp b/clang/test/clang-rename/VariableMacro.cpp index 622e825d3e4..622e825d3e4 100644 --- a/clang-tools-extra/test/clang-rename/VariableMacro.cpp +++ b/clang/test/clang-rename/VariableMacro.cpp diff --git a/clang-tools-extra/test/clang-rename/YAMLInput.cpp b/clang/test/clang-rename/YAMLInput.cpp index 55dbc6d66a5..55dbc6d66a5 100644 --- a/clang-tools-extra/test/clang-rename/YAMLInput.cpp +++ b/clang/test/clang-rename/YAMLInput.cpp diff --git a/clang/tools/CMakeLists.txt b/clang/tools/CMakeLists.txt index b0c97f0f1e4..4976332b7db 100644 --- a/clang/tools/CMakeLists.txt +++ b/clang/tools/CMakeLists.txt @@ -10,6 +10,8 @@ add_clang_subdirectory(clang-offload-bundler) add_clang_subdirectory(c-index-test) +add_clang_subdirectory(clang-rename) + if(CLANG_ENABLE_ARCMT) add_clang_subdirectory(arcmt-test) add_clang_subdirectory(c-arcmt-test) diff --git a/clang-tools-extra/clang-rename/tool/CMakeLists.txt b/clang/tools/clang-rename/CMakeLists.txt index d2109cdcab7..f6a4f49f7aa 100644 --- a/clang-tools-extra/clang-rename/tool/CMakeLists.txt +++ b/clang/tools/clang-rename/CMakeLists.txt @@ -3,10 +3,10 @@ add_clang_executable(clang-rename ClangRename.cpp) target_link_libraries(clang-rename clangBasic clangFrontend - clangRename clangRewrite clangTooling clangToolingCore + clangToolingRefactor ) install(TARGETS clang-rename RUNTIME DESTINATION bin) diff --git a/clang-tools-extra/clang-rename/tool/ClangRename.cpp b/clang/tools/clang-rename/ClangRename.cpp index 82f58e18a44..0fdf9a39809 100644 --- a/clang-tools-extra/clang-rename/tool/ClangRename.cpp +++ b/clang/tools/clang-rename/ClangRename.cpp @@ -13,8 +13,6 @@ /// //===----------------------------------------------------------------------===// -#include "../RenamingAction.h" -#include "../USRFindingAction.h" #include "clang/Basic/Diagnostic.h" #include "clang/Basic/DiagnosticOptions.h" #include "clang/Basic/FileManager.h" @@ -26,6 +24,8 @@ #include "clang/Rewrite/Core/Rewriter.h" #include "clang/Tooling/CommonOptionsParser.h" #include "clang/Tooling/Refactoring.h" +#include "clang/Tooling/Refactoring/Rename/RenamingAction.h" +#include "clang/Tooling/Refactoring/Rename/USRFindingAction.h" #include "clang/Tooling/ReplacementsYaml.h" #include "clang/Tooling/Tooling.h" #include "llvm/ADT/IntrusiveRefCntPtr.h" @@ -160,7 +160,7 @@ int main(int argc, const char **argv) { auto Files = OP.getSourcePathList(); tooling::RefactoringTool Tool(OP.getCompilations(), Files); - rename::USRFindingAction FindingAction(SymbolOffsets, QualifiedNames, Force); + tooling::USRFindingAction FindingAction(SymbolOffsets, QualifiedNames, Force); Tool.run(tooling::newFrontendActionFactory(&FindingAction).get()); const std::vector<std::vector<std::string>> &USRList = FindingAction.getUSRList(); @@ -183,8 +183,8 @@ int main(int argc, const char **argv) { } // Perform the renaming. - rename::RenamingAction RenameAction(NewNames, PrevNames, USRList, - Tool.getReplacements(), PrintLocations); + tooling::RenamingAction RenameAction(NewNames, PrevNames, USRList, + Tool.getReplacements(), PrintLocations); std::unique_ptr<tooling::FrontendActionFactory> Factory = tooling::newFrontendActionFactory(&RenameAction); int ExitCode; diff --git a/clang-tools-extra/clang-rename/tool/clang-rename.el b/clang/tools/clang-rename/clang-rename.el index b6c3ed4c686..b6c3ed4c686 100644 --- a/clang-tools-extra/clang-rename/tool/clang-rename.el +++ b/clang/tools/clang-rename/clang-rename.el diff --git a/clang-tools-extra/clang-rename/tool/clang-rename.py b/clang/tools/clang-rename/clang-rename.py index 3cc6644ff8f..3cc6644ff8f 100644 --- a/clang-tools-extra/clang-rename/tool/clang-rename.py +++ b/clang/tools/clang-rename/clang-rename.py diff --git a/clang/unittests/CMakeLists.txt b/clang/unittests/CMakeLists.txt index 7d407ce3f64..b622d66af4e 100644 --- a/clang/unittests/CMakeLists.txt +++ b/clang/unittests/CMakeLists.txt @@ -29,3 +29,4 @@ add_subdirectory(CodeGen) if(NOT WIN32 AND CLANG_TOOL_LIBCLANG_BUILD) add_subdirectory(libclang) endif() +add_subdirectory(Rename) diff --git a/clang-tools-extra/unittests/clang-rename/CMakeLists.txt b/clang/unittests/Rename/CMakeLists.txt index a121fdcdffd..0b70eed8c9b 100644 --- a/clang-tools-extra/unittests/clang-rename/CMakeLists.txt +++ b/clang/unittests/Rename/CMakeLists.txt @@ -2,12 +2,6 @@ set(LLVM_LINK_COMPONENTS support ) -get_filename_component(CLANG_RENAME_SOURCE_DIR - ${CMAKE_CURRENT_SOURCE_DIR}/../../clang-rename REALPATH) -include_directories( - ${CLANG_RENAME_SOURCE_DIR} - ) - # We'd like clang/unittests/Tooling/RewriterTestContext.h in the test. include_directories(${CLANG_SOURCE_DIR}) @@ -21,8 +15,8 @@ target_link_libraries(ClangRenameTests clangBasic clangFormat clangFrontend - clangRename clangRewrite clangTooling clangToolingCore + clangToolingRefactor ) diff --git a/clang-tools-extra/unittests/clang-rename/ClangRenameTest.h b/clang/unittests/Rename/ClangRenameTest.h index 543b47b9a73..0933dd5aaf4 100644 --- a/clang-tools-extra/unittests/clang-rename/ClangRenameTest.h +++ b/clang/unittests/Rename/ClangRenameTest.h @@ -7,8 +7,6 @@ // //===----------------------------------------------------------------------===// -#include "RenamingAction.h" -#include "USRFindingAction.h" #include "unittests/Tooling/RewriterTestContext.h" #include "clang/ASTMatchers/ASTMatchFinder.h" #include "clang/Basic/FileManager.h" @@ -18,6 +16,8 @@ #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/PCHContainerOperations.h" #include "clang/Tooling/Refactoring.h" +#include "clang/Tooling/Refactoring/Rename/RenamingAction.h" +#include "clang/Tooling/Refactoring/Rename/USRFindingAction.h" #include "clang/Tooling/Tooling.h" #include "llvm/ADT/IntrusiveRefCntPtr.h" #include "llvm/ADT/StringRef.h" @@ -56,7 +56,7 @@ protected: Context.createInMemoryFile(HeaderName, HeaderContent); clang::FileID InputFileID = Context.createInMemoryFile(CCName, NewCode); - rename::USRFindingAction FindingAction({}, {OldName}, false); + tooling::USRFindingAction FindingAction({}, {OldName}, false); std::unique_ptr<tooling::FrontendActionFactory> USRFindingActionFactory = tooling::newFrontendActionFactory(&FindingAction); @@ -70,8 +70,8 @@ protected: FindingAction.getUSRList(); std::vector<std::string> NewNames = {NewName}; std::map<std::string, tooling::Replacements> FileToReplacements; - rename::QualifiedRenamingAction RenameAction(NewNames, USRList, - FileToReplacements); + tooling::QualifiedRenamingAction RenameAction(NewNames, USRList, + FileToReplacements); auto RenameActionFactory = tooling::newFrontendActionFactory(&RenameAction); if (!tooling::runToolOnCodeWithArgs( RenameActionFactory->create(), NewCode, {"-std=c++11"}, CCName, diff --git a/clang-tools-extra/unittests/clang-rename/RenameClassTest.cpp b/clang/unittests/Rename/RenameClassTest.cpp index 29b4594fb0a..29b4594fb0a 100644 --- a/clang-tools-extra/unittests/clang-rename/RenameClassTest.cpp +++ b/clang/unittests/Rename/RenameClassTest.cpp |