summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clangd/FindSymbols.cpp
diff options
context:
space:
mode:
authorKirill Bobyrev <kbobyrev.opensource@gmail.com>2018-09-13 14:27:03 +0000
committerKirill Bobyrev <kbobyrev.opensource@gmail.com>2018-09-13 14:27:03 +0000
commite6dd0806c731841812cd5332774ca12931fca0df (patch)
tree8c58bc386635623040b0c17ac590cda2ee5f3706 /clang-tools-extra/clangd/FindSymbols.cpp
parent60be1f59bd668441da1bdf95730d01ff1ff5ec0d (diff)
downloadbcm5719-llvm-e6dd0806c731841812cd5332774ca12931fca0df.tar.gz
bcm5719-llvm-e6dd0806c731841812cd5332774ca12931fca0df.zip
[clangd] Cleanup FuzzyFindRequest filtering limit semantics
As discussed during D51860 review, it is better to use `llvm::Optional` here as it has clear semantics which reflect intended behavior. Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D52028 llvm-svn: 342138
Diffstat (limited to 'clang-tools-extra/clangd/FindSymbols.cpp')
-rw-r--r--clang-tools-extra/clangd/FindSymbols.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang-tools-extra/clangd/FindSymbols.cpp b/clang-tools-extra/clangd/FindSymbols.cpp
index b808e374eae..054e63d9358 100644
--- a/clang-tools-extra/clangd/FindSymbols.cpp
+++ b/clang-tools-extra/clangd/FindSymbols.cpp
@@ -117,8 +117,9 @@ getWorkspaceSymbols(StringRef Query, int Limit, const SymbolIndex *const Index,
if (IsGlobalQuery || !Names.first.empty())
Req.Scopes = {Names.first};
if (Limit)
- Req.MaxCandidateCount = Limit;
- TopN<ScoredSymbolInfo, ScoredSymbolGreater> Top(Req.MaxCandidateCount);
+ Req.Limit = Limit;
+ TopN<ScoredSymbolInfo, ScoredSymbolGreater> Top(
+ Req.Limit ? *Req.Limit : std::numeric_limits<size_t>::max());
FuzzyMatcher Filter(Req.Query);
Index->fuzzyFind(Req, [HintPath, &Top, &Filter](const Symbol &Sym) {
// Prefer the definition over e.g. a function declaration in a header
OpenPOWER on IntegriCloud