package why3find
Module Why3findUtils.LspSource
LSP Server Protocol
Establish the server or exit
Testing if the server is still running. Returns true when there is no more in/out pending messages.
Process (at most) one pending LSP message, if any (non-blocking). First, yield the server to process pending I/O. Then, process one LSP message, if any. Returns true is some request has been processed or not. This function immediately returns false when it is called during a request handler.
LSP Server Capabilities
Dynamically register a server capability. Can be unregistered mater with the returned capability.
Unregister a server capability.
LSP Request Handlers
Register a request or notification handler. Some builtin request and notifications are already registered and shall be forced updated, namely initialize, initialized, shutdown, exit and $/setTrace.
The callbacks may raise exceptions, in which case an error is reported to the client. Meaningfull exceptions are:
Not_foundrequest is not supportedInvalid_argument _request arguments are incorrectFailure _and any other exception are treated as internal error
Ignore a request or notification.