[clang-tools-extra] r241330 - Replace some const std::string & with llvm::StringRef or std::string

Yaron Keren yaron.keren at gmail.com
Fri Jul 3 02:16:21 PDT 2015


Author: yrnkrn
Date: Fri Jul  3 04:16:20 2015
New Revision: 241330

URL: http://llvm.org/viewvc/llvm-project?rev=241330&view=rev
Log:
Replace some const std::string & with llvm::StringRef or std::string
and std::move to avoid implicit std::string construction.

Patch by Eugene Kosov.


Modified:
    clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h
    clang-tools-extra/trunk/clang-rename/RenamingAction.cpp
    clang-tools-extra/trunk/clang-rename/RenamingAction.h
    clang-tools-extra/trunk/modularize/Modularize.cpp
    clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp
    clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h

Modified: clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h?rev=241330&r1=241329&r2=241330&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h (original)
+++ clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h Fri Jul  3 04:16:20 2015
@@ -170,9 +170,9 @@ private:
 class DeclFinderASTVisitor :
   public clang::RecursiveASTVisitor<DeclFinderASTVisitor> {
 public:
-  DeclFinderASTVisitor(const std::string &Name,
-                       const StmtGeneratedVarNameMap *GeneratedDecls) :
-    Name(Name), GeneratedDecls(GeneratedDecls), Found(false) { }
+  DeclFinderASTVisitor(std::string Name,
+                       const StmtGeneratedVarNameMap *GeneratedDecls)
+      : Name(std::move(Name)), GeneratedDecls(GeneratedDecls), Found(false) {}
 
   /// Attempts to find any usages of variables name Name in Body, returning
   /// true when it is used in Body. This includes the generated loop variables

Modified: clang-tools-extra/trunk/clang-rename/RenamingAction.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-rename/RenamingAction.cpp?rev=241330&r1=241329&r2=241330&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-rename/RenamingAction.cpp (original)
+++ clang-tools-extra/trunk/clang-rename/RenamingAction.cpp Fri Jul  3 04:16:20 2015
@@ -37,14 +37,11 @@ namespace rename {
 
 class RenamingASTConsumer : public ASTConsumer {
 public:
-  RenamingASTConsumer(const std::string &NewName,
-                      const std::string &PrevName,
+  RenamingASTConsumer(StringRef NewName, StringRef PrevName,
                       const std::vector<std::string> &USRs,
-                      tooling::Replacements &Replaces,
-                      bool PrintLocations)
+                      tooling::Replacements &Replaces, bool PrintLocations)
       : NewName(NewName), PrevName(PrevName), USRs(USRs), Replaces(Replaces),
-        PrintLocations(PrintLocations) {
-  }
+        PrintLocations(PrintLocations) {}
 
   void HandleTranslationUnit(ASTContext &Context) override {
     const auto &SourceMgr = Context.getSourceManager();
@@ -58,7 +55,7 @@ public:
       NewCandidates.clear();
     }
 
-    auto PrevNameLen = PrevName.length();
+    auto PrevNameLen = PrevName.size();
     if (PrintLocations)
       for (const auto &Loc : RenamingCandidates) {
         FullSourceLoc FullLoc(Loc, SourceMgr);
@@ -75,7 +72,7 @@ public:
   }
 
 private:
-  const std::string &NewName, &PrevName;
+  StringRef NewName, PrevName;
   const std::vector<std::string> &USRs;
   tooling::Replacements &Replaces;
   bool PrintLocations;

Modified: clang-tools-extra/trunk/clang-rename/RenamingAction.h
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-rename/RenamingAction.h?rev=241330&r1=241329&r2=241330&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-rename/RenamingAction.h (original)
+++ clang-tools-extra/trunk/clang-rename/RenamingAction.h Fri Jul  3 04:16:20 2015
@@ -25,7 +25,7 @@ namespace rename {
 
 class RenamingAction {
 public:
-  RenamingAction(const std::string &NewName, const std::string &PrevName,
+  RenamingAction(llvm::StringRef NewName, llvm::StringRef PrevName,
                  const std::vector<std::string> &USRs,
                  tooling::Replacements &Replaces, bool PrintLocations = false)
       : NewName(NewName), PrevName(PrevName), USRs(USRs), Replaces(Replaces),
@@ -35,7 +35,7 @@ public:
   std::unique_ptr<ASTConsumer> newASTConsumer();
 
 private:
-  const std::string &NewName, &PrevName;
+  llvm::StringRef NewName, PrevName;
   const std::vector<std::string> &USRs;
   tooling::Replacements &Replaces;
   bool PrintLocations;

Modified: clang-tools-extra/trunk/modularize/Modularize.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/modularize/Modularize.cpp?rev=241330&r1=241329&r2=241330&view=diff
==============================================================================
--- clang-tools-extra/trunk/modularize/Modularize.cpp (original)
+++ clang-tools-extra/trunk/modularize/Modularize.cpp Fri Jul  3 04:16:20 2015
@@ -466,9 +466,9 @@ class EntityMap : public StringMap<Small
 public:
   DenseMap<const FileEntry *, HeaderContents> HeaderContentMismatches;
 
-  void add(const std::string &Name, enum Entry::EntryKind Kind, Location Loc) {
+  void add(StringRef Name, enum Entry::EntryKind Kind, Location Loc) {
     // Record this entity in its header.
-    HeaderEntry HE = { Name, Loc };
+    HeaderEntry HE = {Name.str(), Loc};
     CurHeaderContents[Loc.File].push_back(HE);
 
     // Check whether we've seen this entry before.

Modified: clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp?rev=241330&r1=241329&r2=241330&view=diff
==============================================================================
--- clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp (original)
+++ clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp Fri Jul  3 04:16:20 2015
@@ -627,7 +627,7 @@ void PPCallbacksTracker::appendArgument(
 
 // Append a double-quoted argument to the top trace item.
 void PPCallbacksTracker::appendQuotedArgument(const char *Name,
-                                              const std::string &Value) {
+                                              llvm::StringRef Value) {
   std::string Str;
   llvm::raw_string_ostream SS(Str);
   SS << "\"" << Value << "\"";

Modified: clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h?rev=241330&r1=241329&r2=241330&view=diff
==============================================================================
--- clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h (original)
+++ clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h Fri Jul  3 04:16:20 2015
@@ -215,7 +215,7 @@ public:
   void appendArgument(const char *Name, const clang::Module *Value);
 
   /// \brief Append a double-quoted argument to the top trace item.
-  void appendQuotedArgument(const char *Name, const std::string &Value);
+  void appendQuotedArgument(const char *Name, llvm::StringRef Value);
 
   /// \brief Append a double-quoted file path argument to the top trace item.
   void appendFilePathArgument(const char *Name, llvm::StringRef Value);





More information about the cfe-commits mailing list