[clang-tools-extra] r271279 - [include-fixer] use tooling::Replacements since the order of replacements don't matter anymore.

Eric Liu via cfe-commits cfe-commits at lists.llvm.org
Tue May 31 06:53:03 PDT 2016


Author: ioeric
Date: Tue May 31 08:52:59 2016
New Revision: 271279

URL: http://llvm.org/viewvc/llvm-project?rev=271279&view=rev
Log:
[include-fixer] use tooling::Replacements since the order of replacements don't matter anymore.

Summary: [include-fixer] use tooling::Replacements since the order of replacements don't matter anymore.

Differential Revision: http://reviews.llvm.org/D20813

Modified:
    clang-tools-extra/trunk/include-fixer/IncludeFixer.cpp
    clang-tools-extra/trunk/include-fixer/IncludeFixer.h
    clang-tools-extra/trunk/include-fixer/tool/ClangIncludeFixer.cpp
    clang-tools-extra/trunk/unittests/include-fixer/IncludeFixerTest.cpp

Modified: clang-tools-extra/trunk/include-fixer/IncludeFixer.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/include-fixer/IncludeFixer.cpp?rev=271279&r1=271278&r2=271279&view=diff
==============================================================================
--- clang-tools-extra/trunk/include-fixer/IncludeFixer.cpp (original)
+++ clang-tools-extra/trunk/include-fixer/IncludeFixer.cpp Tue May 31 08:52:59 2016
@@ -382,12 +382,12 @@ bool IncludeFixerActionFactory::runInvoc
   return !Compiler.getDiagnostics().hasFatalErrorOccurred();
 }
 
-std::vector<clang::tooling::Replacement>
+tooling::Replacements
 createInsertHeaderReplacements(StringRef Code, StringRef FilePath,
                                StringRef Header, unsigned FirstIncludeOffset,
                                const clang::format::FormatStyle &Style) {
   if (Header.empty())
-    return {};
+    return tooling::Replacements();
   // Create replacements for new headers.
   clang::tooling::Replacements Insertions;
   if (FirstIncludeOffset == -1U) {
@@ -409,13 +409,7 @@ createInsertHeaderReplacements(StringRef
       llvm::dbgs() << R.toString() << '\n';
   });
 
-  clang::tooling::Replacements Replaces =
-      formatReplacements(Code, Insertions, Style);
-  // FIXME: remove this when `clang::tooling::Replacements` is implemented as
-  // `std::vector<clang::tooling::Replacement>`.
-  std::vector<clang::tooling::Replacement> Results;
-  std::copy(Replaces.begin(), Replaces.end(), std::back_inserter(Results));
-  return Results;
+  return formatReplacements(Code, Insertions, Style);
 }
 
 } // namespace include_fixer

Modified: clang-tools-extra/trunk/include-fixer/IncludeFixer.h
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/include-fixer/IncludeFixer.h?rev=271279&r1=271278&r2=271279&view=diff
==============================================================================
--- clang-tools-extra/trunk/include-fixer/IncludeFixer.h (original)
+++ clang-tools-extra/trunk/include-fixer/IncludeFixer.h Tue May 31 08:52:59 2016
@@ -74,7 +74,7 @@ private:
 /// \param Style clang-format style being used.
 ///
 /// \return Replacements for inserting and sorting headers.
-std::vector<clang::tooling::Replacement> createInsertHeaderReplacements(
+tooling::Replacements createInsertHeaderReplacements(
     StringRef Code, StringRef FilePath, StringRef Header,
     unsigned FirstIncludeOffset = -1U,
     const clang::format::FormatStyle &Style = clang::format::getLLVMStyle());

Modified: clang-tools-extra/trunk/include-fixer/tool/ClangIncludeFixer.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/include-fixer/tool/ClangIncludeFixer.cpp?rev=271279&r1=271278&r2=271279&view=diff
==============================================================================
--- clang-tools-extra/trunk/include-fixer/tool/ClangIncludeFixer.cpp (original)
+++ clang-tools-extra/trunk/include-fixer/tool/ClangIncludeFixer.cpp Tue May 31 08:52:59 2016
@@ -169,7 +169,7 @@ int includeFixerMain(int argc, const cha
     }
 
     // FIXME: Insert the header in right FirstIncludeOffset.
-    std::vector<tooling::Replacement> Replacements =
+    tooling::Replacements Replacements =
         clang::include_fixer::createInsertHeaderReplacements(
             Code->getBuffer(), FilePath, InsertHeader,
             /*FirstIncludeOffset=*/0, InsertStyle);
@@ -215,7 +215,7 @@ int includeFixerMain(int argc, const cha
   }
 
   // FIXME: Rank the results and pick the best one instead of the first one.
-  std::vector<tooling::Replacement> Replacements =
+  tooling::Replacements Replacements =
       clang::include_fixer::createInsertHeaderReplacements(
           /*Code=*/Buffer.get()->getBuffer(), FilePath, Context.Headers.front(),
           Context.FirstIncludeOffset, InsertStyle);
@@ -231,9 +231,8 @@ int includeFixerMain(int argc, const cha
   Diagnostics.setClient(&DiagnosticPrinter, false);
 
   if (STDINMode) {
-    tooling::Replacements Replaces(Replacements.begin(), Replacements.end());
     std::string ChangedCode =
-        tooling::applyAllReplacements(Code->getBuffer(), Replaces);
+        tooling::applyAllReplacements(Code->getBuffer(), Replacements);
     llvm::outs() << ChangedCode;
     return 0;
   }

Modified: clang-tools-extra/trunk/unittests/include-fixer/IncludeFixerTest.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/unittests/include-fixer/IncludeFixerTest.cpp?rev=271279&r1=271278&r2=271279&view=diff
==============================================================================
--- clang-tools-extra/trunk/unittests/include-fixer/IncludeFixerTest.cpp (original)
+++ clang-tools-extra/trunk/unittests/include-fixer/IncludeFixerTest.cpp Tue May 31 08:52:59 2016
@@ -74,12 +74,12 @@ static std::string runIncludeFixer(
   IncludeFixerActionFactory Factory(*SymbolIndexMgr, FixerContext, "llvm");
 
   runOnCode(&Factory, Code, "input.cc", ExtraArgs);
-  std::vector<clang::tooling::Replacement> Replacements;
-  if (!FixerContext.Headers.empty()) {
-    Replacements = clang::include_fixer::createInsertHeaderReplacements(
-        Code, "input.cc", FixerContext.Headers.front(),
-        FixerContext.FirstIncludeOffset);
-  }
+  if (FixerContext.Headers.empty())
+    return Code;
+  tooling::Replacements Replacements =
+      clang::include_fixer::createInsertHeaderReplacements(
+          Code, "input.cc", FixerContext.Headers.front(),
+          FixerContext.FirstIncludeOffset);
   clang::RewriterTestContext Context;
   clang::FileID ID = Context.createInMemoryFile("input.cc", Code);
   clang::tooling::applyAllReplacements(Replacements, Context.Rewrite);




More information about the cfe-commits mailing list