diff options
| author | Eric Liu <ioeric@google.com> | 2017-12-20 09:29:54 +0000 |
|---|---|---|
| committer | Eric Liu <ioeric@google.com> | 2017-12-20 09:29:54 +0000 |
| commit | 125cda7d3b31629aa068393254e5766f00a5e3c1 (patch) | |
| tree | 38aa86df3a793a93d4cc2f21023fb6eea3ef463e | |
| parent | 700a28a764e8d8523df456d8c54c366c5f8c53c7 (diff) | |
| download | bcm5719-llvm-125cda7d3b31629aa068393254e5766f00a5e3c1.tar.gz bcm5719-llvm-125cda7d3b31629aa068393254e5766f00a5e3c1.zip | |
[clangd] Igore cases in index fuzzy find.
llvm-svn: 321157
| -rw-r--r-- | clang-tools-extra/clangd/index/MemIndex.cpp | 2 | ||||
| -rw-r--r-- | clang-tools-extra/unittests/clangd/IndexTests.cpp | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/clang-tools-extra/clangd/index/MemIndex.cpp b/clang-tools-extra/clangd/index/MemIndex.cpp index 84db3274117..d0d8084f471 100644 --- a/clang-tools-extra/clangd/index/MemIndex.cpp +++ b/clang-tools-extra/clangd/index/MemIndex.cpp @@ -49,7 +49,7 @@ bool MemIndex::fuzzyFind(const Context &Ctx, const FuzzyFindRequest &Req, continue; // FIXME(ioeric): use fuzzy matcher. - if (StringRef(StringRef(Sym->Name).lower()).contains(Req.Query)) { + if (StringRef(Sym->Name).find_lower(Req.Query) != StringRef::npos) { if (++Matched > Req.MaxCandidateCount) return false; Callback(*Sym); diff --git a/clang-tools-extra/unittests/clangd/IndexTests.cpp b/clang-tools-extra/unittests/clangd/IndexTests.cpp index ea0ea794cb9..a556424c0bd 100644 --- a/clang-tools-extra/unittests/clangd/IndexTests.cpp +++ b/clang-tools-extra/unittests/clangd/IndexTests.cpp @@ -178,6 +178,16 @@ TEST(MemIndexTest, NoMatchNestedScopes) { EXPECT_THAT(match(I, Req), UnorderedElementsAre("a::xyz")); } +TEST(MemIndexTest, IgnoreCases) { + MemIndex I; + I.build(generateSymbols({"ns::ABC", "ns::abc"})); + FuzzyFindRequest Req; + Req.Query = "AB"; + Req.Scopes = {"ns"}; + auto Matches = match(I, Req); + EXPECT_THAT(match(I, Req), UnorderedElementsAre("ns::ABC", "ns::abc")); +} + } // namespace } // namespace clangd } // namespace clang |

