@@ -780,7 +780,7 @@ void ClangdLSPServer::onWorkspaceSymbol(
780
780
const WorkspaceSymbolParams &Params,
781
781
Callback<std::vector<SymbolInformation>> Reply) {
782
782
Server->workspaceSymbols (
783
- Params.query , Opts.CodeComplete .Limit ,
783
+ Params.query , Params. limit . getValueOr ( Opts.CodeComplete .Limit ) ,
784
784
[Reply = std::move (Reply),
785
785
this ](llvm::Expected<std::vector<SymbolInformation>> Items) mutable {
786
786
if (!Items)
@@ -1031,21 +1031,24 @@ void ClangdLSPServer::onCompletion(const CompletionParams &Params,
1031
1031
vlog (" ignored auto-triggered completion, preceding char did not match" );
1032
1032
return Reply (CompletionList ());
1033
1033
}
1034
- Server->codeComplete (
1035
- Params.textDocument .uri .file (), Params.position , Opts.CodeComplete ,
1036
- [Reply = std::move (Reply),
1037
- this ](llvm::Expected<CodeCompleteResult> List) mutable {
1038
- if (!List)
1039
- return Reply (List.takeError ());
1040
- CompletionList LSPList;
1041
- LSPList.isIncomplete = List->HasMore ;
1042
- for (const auto &R : List->Completions ) {
1043
- CompletionItem C = R.render (Opts.CodeComplete );
1044
- C.kind = adjustKindToCapability (C.kind , SupportedCompletionItemKinds);
1045
- LSPList.items .push_back (std::move (C));
1046
- }
1047
- return Reply (std::move (LSPList));
1048
- });
1034
+ auto Opts = this ->Opts .CodeComplete ;
1035
+ if (Params.limit && *Params.limit >= 0 )
1036
+ Opts.Limit = *Params.limit ;
1037
+ Server->codeComplete (Params.textDocument .uri .file (), Params.position , Opts,
1038
+ [Reply = std::move (Reply), Opts,
1039
+ this ](llvm::Expected<CodeCompleteResult> List) mutable {
1040
+ if (!List)
1041
+ return Reply (List.takeError ());
1042
+ CompletionList LSPList;
1043
+ LSPList.isIncomplete = List->HasMore ;
1044
+ for (const auto &R : List->Completions ) {
1045
+ CompletionItem C = R.render (Opts);
1046
+ C.kind = adjustKindToCapability (
1047
+ C.kind , SupportedCompletionItemKinds);
1048
+ LSPList.items .push_back (std::move (C));
1049
+ }
1050
+ return Reply (std::move (LSPList));
1051
+ });
1049
1052
}
1050
1053
1051
1054
void ClangdLSPServer::onSignatureHelp (const TextDocumentPositionParams &Params,
0 commit comments