//===--- SyncAPI.h - Sync version of ClangdServer's API ----------*- C++-*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===---------------------------------------------------------------------===// // This file contains synchronous versions of ClangdServer's async API. We // deliberately don't expose the sync API outside tests to encourage using the // async versions in clangd code. #ifndef LLVM_CLANG_TOOLS_EXTRA_UNITTESTS_CLANGD_SYNCAPI_H #define LLVM_CLANG_TOOLS_EXTRA_UNITTESTS_CLANGD_SYNCAPI_H #include "ClangdServer.h" #include namespace clang { namespace clangd { Tagged runCodeComplete(ClangdServer &Server, PathRef File, Position Pos, clangd::CodeCompleteOptions Opts); llvm::Expected> runSignatureHelp(ClangdServer &Server, PathRef File, Position Pos); llvm::Expected>> runFindDefinitions(ClangdServer &Server, PathRef File, Position Pos); llvm::Expected>> runFindDocumentHighlights(ClangdServer &Server, PathRef File, Position Pos); llvm::Expected> runRename(ClangdServer &Server, PathRef File, Position Pos, StringRef NewName); std::string runDumpAST(ClangdServer &Server, PathRef File); } // namespace clangd } // namespace clang #endif