r371117 - [clang][Index] Replace CodegenNameGenerator with ASTNameGenerator
Jan Korous via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 5 13:33:52 PDT 2019
Author: jkorous
Date: Thu Sep 5 13:33:52 2019
New Revision: 371117
URL: http://llvm.org/viewvc/llvm-project?rev=371117&view=rev
Log:
[clang][Index] Replace CodegenNameGenerator with ASTNameGenerator
Follow-up to: 3ff8c3b73f6, d5d15b4c1fd
Should be NFC since the original patch just moved the code.
Removed:
cfe/trunk/include/clang/Index/CodegenNameGenerator.h
cfe/trunk/lib/Index/CodegenNameGenerator.cpp
Modified:
cfe/trunk/lib/Index/CMakeLists.txt
cfe/trunk/tools/c-index-test/core_main.cpp
cfe/trunk/tools/libclang/CIndex.cpp
Removed: cfe/trunk/include/clang/Index/CodegenNameGenerator.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Index/CodegenNameGenerator.h?rev=371116&view=auto
==============================================================================
--- cfe/trunk/include/clang/Index/CodegenNameGenerator.h (original)
+++ cfe/trunk/include/clang/Index/CodegenNameGenerator.h (removed)
@@ -1,52 +0,0 @@
-//===- CodegenNameGenerator.h - Codegen name generation -------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-//
-// Determines the name that the symbol will get for code generation.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_CLANG_INDEX_CODEGENNAMEGENERATOR_H
-#define LLVM_CLANG_INDEX_CODEGENNAMEGENERATOR_H
-
-#include "clang/AST/Mangle.h"
-#include "clang/Basic/LLVM.h"
-#include <memory>
-#include <string>
-#include <vector>
-
-namespace clang {
- class ASTContext;
- class Decl;
-
-namespace index {
-
-class CodegenNameGenerator {
-public:
- explicit CodegenNameGenerator(ASTContext &Ctx);
- ~CodegenNameGenerator();
-
- /// \returns true on failure to produce a name for the given decl, false on
- /// success.
- bool writeName(const Decl *D, raw_ostream &OS);
-
- /// Version of \c writeName function that returns a string.
- std::string getName(const Decl *D);
-
- /// This can return multiple mangled names when applicable, e.g. for C++
- /// constructors/destructors.
- std::vector<std::string> getAllManglings(const Decl *D);
-
-private:
- struct Implementation;
- std::unique_ptr<ASTNameGenerator> Impl;
-};
-
-} // namespace index
-} // namespace clang
-
-#endif // LLVM_CLANG_INDEX_CODEGENNAMEGENERATOR_H
Modified: cfe/trunk/lib/Index/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Index/CMakeLists.txt?rev=371117&r1=371116&r2=371117&view=diff
==============================================================================
--- cfe/trunk/lib/Index/CMakeLists.txt (original)
+++ cfe/trunk/lib/Index/CMakeLists.txt Thu Sep 5 13:33:52 2019
@@ -4,7 +4,6 @@ set(LLVM_LINK_COMPONENTS
)
add_clang_library(clangIndex
- CodegenNameGenerator.cpp
CommentToXML.cpp
FileIndexRecord.cpp
IndexBody.cpp
Removed: cfe/trunk/lib/Index/CodegenNameGenerator.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Index/CodegenNameGenerator.cpp?rev=371116&view=auto
==============================================================================
--- cfe/trunk/lib/Index/CodegenNameGenerator.cpp (original)
+++ cfe/trunk/lib/Index/CodegenNameGenerator.cpp (removed)
@@ -1,36 +0,0 @@
-//===- CodegenNameGenerator.cpp - Codegen name generation -----------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-//
-// Determines the name that the symbol will get for code generation.
-//
-//===----------------------------------------------------------------------===//
-
-#include "clang/Index/CodegenNameGenerator.h"
-#include "clang/AST/ASTContext.h"
-
-using namespace clang;
-using namespace clang::index;
-
-CodegenNameGenerator::CodegenNameGenerator(ASTContext &Ctx)
- : Impl(new ASTNameGenerator(Ctx)) {
-}
-
-CodegenNameGenerator::~CodegenNameGenerator() {
-}
-
-bool CodegenNameGenerator::writeName(const Decl *D, raw_ostream &OS) {
- return Impl->writeName(D, OS);
-}
-
-std::string CodegenNameGenerator::getName(const Decl *D) {
- return Impl->getName(D);
-}
-
-std::vector<std::string> CodegenNameGenerator::getAllManglings(const Decl *D) {
- return Impl->getAllManglings(D);
-}
Modified: cfe/trunk/tools/c-index-test/core_main.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/c-index-test/core_main.cpp?rev=371117&r1=371116&r2=371117&view=diff
==============================================================================
--- cfe/trunk/tools/c-index-test/core_main.cpp (original)
+++ cfe/trunk/tools/c-index-test/core_main.cpp Thu Sep 5 13:33:52 2019
@@ -6,6 +6,7 @@
//
//===----------------------------------------------------------------------===//
+#include "clang/AST/Mangle.h"
#include "clang/Basic/LangOptions.h"
#include "clang/CodeGen/ObjectFilePCHContainerOperations.h"
#include "clang/Frontend/ASTUnit.h"
@@ -15,7 +16,6 @@
#include "clang/Index/IndexingAction.h"
#include "clang/Index/IndexDataConsumer.h"
#include "clang/Index/USRGeneration.h"
-#include "clang/Index/CodegenNameGenerator.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Serialization/ASTReader.h"
#include "llvm/Support/CommandLine.h"
@@ -79,7 +79,7 @@ namespace {
class PrintIndexDataConsumer : public IndexDataConsumer {
raw_ostream &OS;
- std::unique_ptr<CodegenNameGenerator> CGNameGen;
+ std::unique_ptr<ASTNameGenerator> ASTNameGen;
std::shared_ptr<Preprocessor> PP;
public:
@@ -87,7 +87,7 @@ public:
}
void initialize(ASTContext &Ctx) override {
- CGNameGen.reset(new CodegenNameGenerator(Ctx));
+ ASTNameGen.reset(new ASTNameGenerator(Ctx));
}
void setPreprocessor(std::shared_ptr<Preprocessor> PP) override {
@@ -112,7 +112,7 @@ public:
printSymbolNameAndUSR(D, Ctx, OS);
OS << " | ";
- if (CGNameGen->writeName(D, OS))
+ if (ASTNameGen->writeName(D, OS))
OS << "<no-cgname>";
OS << " | ";
Modified: cfe/trunk/tools/libclang/CIndex.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CIndex.cpp?rev=371117&r1=371116&r2=371117&view=diff
==============================================================================
--- cfe/trunk/tools/libclang/CIndex.cpp (original)
+++ cfe/trunk/tools/libclang/CIndex.cpp Thu Sep 5 13:33:52 2019
@@ -21,6 +21,7 @@
#include "CXType.h"
#include "CursorVisitor.h"
#include "clang/AST/Attr.h"
+#include "clang/AST/Mangle.h"
#include "clang/AST/StmtVisitor.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/DiagnosticCategories.h"
@@ -30,7 +31,6 @@
#include "clang/Basic/Version.h"
#include "clang/Frontend/ASTUnit.h"
#include "clang/Frontend/CompilerInstance.h"
-#include "clang/Index/CodegenNameGenerator.h"
#include "clang/Index/CommentToXML.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/Lexer.h"
@@ -4737,8 +4737,8 @@ CXString clang_Cursor_getMangling(CXCurs
return cxstring::createEmpty();
ASTContext &Ctx = D->getASTContext();
- index::CodegenNameGenerator CGNameGen(Ctx);
- return cxstring::createDup(CGNameGen.getName(D));
+ ASTNameGenerator ASTNameGen(Ctx);
+ return cxstring::createDup(ASTNameGen.getName(D));
}
CXStringSet *clang_Cursor_getCXXManglings(CXCursor C) {
@@ -4750,8 +4750,8 @@ CXStringSet *clang_Cursor_getCXXMangling
return nullptr;
ASTContext &Ctx = D->getASTContext();
- index::CodegenNameGenerator CGNameGen(Ctx);
- std::vector<std::string> Manglings = CGNameGen.getAllManglings(D);
+ ASTNameGenerator ASTNameGen(Ctx);
+ std::vector<std::string> Manglings = ASTNameGen.getAllManglings(D);
return cxstring::createSet(Manglings);
}
@@ -4764,8 +4764,8 @@ CXStringSet *clang_Cursor_getObjCManglin
return nullptr;
ASTContext &Ctx = D->getASTContext();
- index::CodegenNameGenerator CGNameGen(Ctx);
- std::vector<std::string> Manglings = CGNameGen.getAllManglings(D);
+ ASTNameGenerator ASTNameGen(Ctx);
+ std::vector<std::string> Manglings = ASTNameGen.getAllManglings(D);
return cxstring::createSet(Manglings);
}
More information about the cfe-commits
mailing list