diff options
-rw-r--r-- | clang-tools-extra/unittests/clangd/TestIndex.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/clang-tools-extra/unittests/clangd/TestIndex.cpp b/clang-tools-extra/unittests/clangd/TestIndex.cpp index a782e17c400..11ac4239df1 100644 --- a/clang-tools-extra/unittests/clangd/TestIndex.cpp +++ b/clang-tools-extra/unittests/clangd/TestIndex.cpp @@ -29,15 +29,9 @@ Symbol symbol(llvm::StringRef QName) { static std::string replace(llvm::StringRef Haystack, llvm::StringRef Needle, llvm::StringRef Repl) { - std::string Result; - llvm::raw_string_ostream OS(Result); - std::pair<llvm::StringRef, llvm::StringRef> Split; - for (Split = Haystack.split(Needle); !Split.second.empty(); - Split = Split.first.split(Needle)) - OS << Split.first << Repl; - Result += Split.first; - OS.flush(); - return Result; + llvm::SmallVector<llvm::StringRef, 8> Parts; + Haystack.split(Parts, Needle); + return llvm::join(Parts, Repl); } // Helpers to produce fake index symbols for memIndex() or completions(). |