clang-tools 22.0.0git
clang::clangd::ClangdLSPServer Class Reference

This class exposes ClangdServer's capabilities via Language Server Protocol. More...

#include <ClangdLSPServer.h>

Inheritance diagram for clang::clangd::ClangdLSPServer:
[legend]

Classes

class  MessageHandler
struct  Options

Public Member Functions

 ClangdLSPServer (Transport &Transp, const ThreadsafeFS &TFS, const ClangdLSPServer::Options &Opts)
 ~ClangdLSPServer ()
 The destructor blocks on any outstanding background tasks.
 ClangdLSPServer (const ClangdLSPServer &other)=delete
ClangdLSPServeroperator= (const ClangdLSPServer &other)=delete
bool run ()
 Run LSP server loop, communicating with the Transport provided in the constructor.
void profile (MemoryTree &MT) const
 Profiles resource-usage.

Detailed Description

This class exposes ClangdServer's capabilities via Language Server Protocol.

MessageHandler binds the implemented LSP methods (e.g. onInitialize) to corresponding JSON-RPC methods ("initialize"). The server also supports $/cancelRequest (MessageHandler provides this).

Definition at line 39 of file ClangdLSPServer.h.

Constructor & Destructor Documentation

◆ ClangdLSPServer() [1/2]

clang::clangd::ClangdLSPServer::ClangdLSPServer ( Transport & Transp,
const ThreadsafeFS & TFS,
const ClangdLSPServer::Options & Opts )

◆ ~ClangdLSPServer()

clang::clangd::ClangdLSPServer::~ClangdLSPServer ( )

The destructor blocks on any outstanding background tasks.

Definition at line 1747 of file ClangdLSPServer.cpp.

◆ ClangdLSPServer() [2/2]

clang::clangd::ClangdLSPServer::ClangdLSPServer ( const ClangdLSPServer & other)
delete

References ClangdLSPServer().

Member Function Documentation

◆ operator=()

ClangdLSPServer & clang::clangd::ClangdLSPServer::operator= ( const ClangdLSPServer & other)
delete

◆ profile()

void clang::clangd::ClangdLSPServer::profile ( MemoryTree & MT) const

Profiles resource-usage.

Definition at line 1765 of file ClangdLSPServer.cpp.

References clang::clangd::MemoryTree::child().

◆ run()

bool clang::clangd::ClangdLSPServer::run ( )

Run LSP server loop, communicating with the Transport provided in the constructor.

This method must not be executed more than once.

Returns
Whether we shut down cleanly with a 'shutdown' -> 'exit' sequence.

Definition at line 1754 of file ClangdLSPServer.cpp.

References clang::clangd::elog().

Referenced by clang::clangd::clangdMain(), and LLVMFuzzerTestOneInput().


The documentation for this class was generated from the following files: