aboutsummaryrefslogtreecommitdiff
path: root/unittests/clangd/SyncAPI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'unittests/clangd/SyncAPI.cpp')
-rw-r--r--unittests/clangd/SyncAPI.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/unittests/clangd/SyncAPI.cpp b/unittests/clangd/SyncAPI.cpp
index 0a1c5988..ae9ece59 100644
--- a/unittests/clangd/SyncAPI.cpp
+++ b/unittests/clangd/SyncAPI.cpp
@@ -12,8 +12,8 @@ namespace clang {
namespace clangd {
void runAddDocument(ClangdServer &Server, PathRef File, StringRef Contents,
- WantDiagnostics WantDiags, bool SkipCache) {
- Server.addDocument(File, Contents, WantDiags, SkipCache);
+ WantDiagnostics WantDiags) {
+ Server.addDocument(File, Contents, WantDiags);
if (!Server.blockUntilIdleForTest())
llvm_unreachable("not idle after addDocument");
}
@@ -36,7 +36,7 @@ template <typename T> struct CaptureProxy {
}
CaptureProxy &operator=(CaptureProxy &&) = delete;
- operator UniqueFunction<void(T)>() && {
+ operator llvm::unique_function<void(T)>() && {
assert(!Future.valid() && "conversion to callback called multiple times");
Future = Promise.get_future();
return Bind(
@@ -68,10 +68,10 @@ template <typename T> CaptureProxy<T> capture(llvm::Optional<T> &Target) {
}
} // namespace
-llvm::Expected<CompletionList>
+llvm::Expected<CodeCompleteResult>
runCodeComplete(ClangdServer &Server, PathRef File, Position Pos,
clangd::CodeCompleteOptions Opts) {
- llvm::Optional<llvm::Expected<CompletionList>> Result;
+ llvm::Optional<llvm::Expected<CodeCompleteResult>> Result;
Server.codeComplete(File, Pos, Opts, capture(Result));
return std::move(*Result);
}
@@ -117,5 +117,12 @@ runWorkspaceSymbols(ClangdServer &Server, StringRef Query, int Limit) {
return std::move(*Result);
}
+llvm::Expected<std::vector<SymbolInformation>>
+runDocumentSymbols(ClangdServer &Server, PathRef File) {
+ llvm::Optional<llvm::Expected<std::vector<SymbolInformation>>> Result;
+ Server.documentSymbols(File, capture(Result));
+ return std::move(*Result);
+}
+
} // namespace clangd
} // namespace clang