Namespace

Lsp – 3.0

LSP library built on GLib. Designed for both editors and servers.

Version3.0
AuthorsPrinceton Ferro
LicenseLGPL-2.1
Websitehttps://vala-lang.github.io/lsp-glib/
Sourcehttps://github.com/vala-lang/lsp-glib

Build

C headerslsp-glib.h, io/jsonrpc-reply.h
pkg-config fileslsp-glib-3.0

Dependencies

GLib—2.0 The base utility library
Browse documentation
GObject—2.0 The base type system library
Browse documentation
Gio—2.0 GObject Interfaces and Objects, Networking, IPC, and I/O
Browse documentation

Additional documentation

Classes

Action

A generic action that can be performed, such as a command or a refactoring. This is more generic than LspResourceOperation.

ApplyWorkspaceEditResult

The result returned from the workspace/applyEdit request.

Client

The JSON-RPC client. Exposes methods and notifications that should be called from server code. If you want to implement a LSP editor, use LspEditor.

CodeAction

A code action represents a change that can be performed in code, e.g. to fix a problem or to refactor code.

CodeLensParams

The parameters of a textDocument/codeLens request.

Command

Represents a reference to a command.

CreateFile

Create file operation.

DeleteFile

Delete file operation.

DocumentFormattingParams

The parameters of a textDocument/formatting request.

DocumentRangeFormattingParams

The parameters of a textDocument/rangeFormatting request.

Editor

A JSON-RPC server implementing the client side of the Language Server Protocol.

InlayHintParams

The parameters of a textDocument/inlayHint request.

PrepareRenameParams

The parameters of a textDocument/prepareRename request.

RenameFile

Rename file operation.

RenameParams

The parameters of a textDocument/rename request.

ResourceOperation

An operation to edit a workspace.

Server

A JSON-RPC server implementing the server’s side of the Language Server Protocol using GMainLoop.

SignatureHelpOptions

SymbolInformation

Represents information about programming constructs like variables, classes, interfaces, etc.

TextDocumentEdit

Describes textual changes on a single text document.

TextDocumentPositionParams

A parameter literal used in requests to pass a text document and a position inside that document.

Structs

CallHierarchyIncomingCall

Represents an incoming call from a call hierarchy.

CallHierarchyItem

Represents an item in a call hierarchy.

CallHierarchyOptions

Options for call hierarchy support.

CallHierarchyOutgoingCall

Represents an outgoing call from a call hierarchy.

ChangeAnnotation

Additional information that describes document changes.

ClientCaps

Capabilities of the client / editor.

ClientInfo

Information about the client/editor.

CodeActionContext

Contains additional diagnostic information about the context in which a code action is run.

CodeDescription

Structure to capture a description for an error code.

CodeLens

A code lens represents a command that should be shown along with source text, like the number of references, a way to run tests, etc.

CodeLensOptions

CompletionClientCaps

Completion-specific client capabilities.

CompletionContext

Contains additional information about the context in which a completion request is triggered.

CompletionItem

A completion item is an option in a list of completions generated when calling textDocument/completion.

CompletionItemLabelDetails

Additional details for a completion item label.

CompletionList

Represents a collection of LspCompletionItem items to be presented in the editor.

CompletionOptions

Diagnostic

Represents a diagnostic, such as a compiler error or warning.

DiagnosticRelatedInformation

Represents a related message and source code location for a diagnostic.

DocumentHighlight

A document highlight is a range inside a text document which deserves special attention. Usually a document highlight is visualized by changing the background color of its range.

DocumentLinkOptions

DocumentOnTypeFormattingOptions

DocumentSymbol

Represents programming constructs like variables, classes, interfaces, etc. that appear in a document. Document symbols can be hierarchical.

DocumentSymbolClientCaps

Client capabilities for document symbols.

DocumentSymbolResult

The two result forms supported by textDocument/documentSymbol.

FormattingOptions

Formatting options for a textDocument/formatting request.

Hover

The result of a hover request.

InitializeParams

Sent from the client / editor to the server.

InitializeResult

Sent from the language server to the client / editor after initialization.

InlayHint

An inlay hint is a visual decoration that appears inline with the text, e.g. to show the type of a variable or the name of a parameter.

InlayHintLabelPart

A part of an inlay hint label.

InlayHintOptions

Options for inlay hint support.

Location

Represents a location inside a resource, such as a line inside a text file.

MarkupContent

A MarkupContent literal represents a string value which content is interpreted based on its kind flag.

MessageActionItem

Used to show an action in a prompt in the editor.

ParameterInformation

Represents a parameter of a callable-signature. A parameter can have a label and a doc-comment.

Position

Position in a text document expressed as zero-based line and zero-based character offset.

PrepareRenameResult

The result of checking whether a symbol can be renamed.

Range

A range in a text document expressed as (zero-based) start and end positions.

ReferenceContext

Whether to include the declaration of the symbol in the references request.

RenameOptions

ServerCaps

The capabilities of the language server.

ServerInfo

Information about the server.

SignatureHelp

Signature help represents the signature of something callable. There can be multiple signature helps but only one active.

SignatureInformation

Represents the signature of something callable. A signature can have a label, a doc-comment, and a set of parameters.

TextDocumentClientCaps

Text document-specific client capabilities.

TextDocumentContentChangeEvent

An event describing a change to a text document. If LspTextDocumentContentChangeEvent:range is omitted the new text is considered to be the full content of the document.

TextDocumentIdentifier

Contains a text document’s URI and the version (optionally).

TextDocumentItem

An item to transfer a text document from the client to the server.

TextEdit

A textual edit applicable to a text document.

TypeHierarchyItem

Represents an item in a type hierarchy.

TypeHierarchyOptions

Options for type hierarchy support.

WorkspaceClientCaps

Workspace-specific client capabilities.

WorkspaceEdit

A workspace edit represents changes to many resources managed in the workspace.

WorkspaceEditClientCaps

Defines what workspace resource operations the client supports.

WorkspaceFolder

WorkspaceSymbol

A workspace symbol is a symbol that can be returned from the workspace/symbol request. It is similar to LspSymbolInformation but with an extended location that can also be a GUri + LspRange literal.

Enumerations

CodeActionKind

CodeActionTriggerKind

The reason why code actions were requested.

CompletionItemKind

The kind of a completion entry.

CompletionTriggerKind

How a completion was triggered.

DiagnosticSeverity

The diagnostic severity.

DiagnosticTag

The diagnostic tags.

DocumentHighlightKind

A document highlight kind.

FailureHandlingKind

InlayHintKind

The inlay hint kinds.

InsertTextFormat

InsertTextMode

How whitespace and indentation is handled during completion item insertion.

LanguageId

Text documents have a language identifier to identify a document on the server side when it handles more than one language to avoid re- interpreting the file extension. If a document refers to one of the programming languages listed below it is recommended that clients use those ids.

MarkupKind

MessageType

Used when showing a message in the editor.

PrepareSupportDefaultBehavior

Default behavior advertised for prepare rename.

SymbolKind

A symbol kind.

TextDocumentSyncKind

Describes how the host (editor) should sync document changes to the language server.

TraceValue

A TraceValue represents the level of verbosity with which the server systematically reports its execution trace using $/logTrace notifications. The initial trace value is set by the client at initialization and can be modified later using the $/setTrace notification.

Bitfields

CompletionClientFlags

Boolean completion capabilities.

CompletionItemKindFlags

A set of LspCompletionItemKind values supported by a client. Protocol value n maps to bit 1 << (n - 1).

CompletionItemTag

CreateFileOptions

DeleteFileOptions

DiagnosticTagFlags

A set of LspDiagnosticTag values.

DocumentSymbolClientFlags

Boolean document symbol capabilities.

FormattingOptionFlags

Flags for formatting options.

InlayHintPadding

Padding flags for inlay hints.

InsertTextModeFlags

A set of LspInsertTextMode values supported by a client.

RenameClientCaps

Client capabilities for renaming symbols.

RenameFileOptions

ResourceOperationKind

The kind of resource operations supported by the client.

SymbolKindFlags

A set of LspSymbolKind values supported by a client. Protocol value n maps to bit 1 << (n - 1).

SymbolTag

Symbol tags are extra annotations that tweak the rendering of a symbol.

TextDocumentSyncClientCaps

TypeHierarchyClientCaps

Client capabilities for type hierarchy requests.

WorkspaceClientFlags

WorkspaceEditClientFlags

Boolean workspace edit capabilities.

Error Domains

DeserializeError

Problems encountered during deserialization.

ProtocolError

Errors that can be returned in JSON-RPC and LSP error responses.