clang-tools  14.0.0git
Public Attributes | List of all members
clang::clangd::ClientCapabilities Struct Reference

#include <Protocol.h>

Collaboration diagram for clang::clangd::ClientCapabilities:
Collaboration graph
[legend]

Public Attributes

llvm::Optional< SymbolKindBitsetWorkspaceSymbolKinds
 The supported set of SymbolKinds for workspace/symbol. More...
 
bool DiagnosticFixes = false
 Whether the client accepts diagnostics with codeActions attached inline. More...
 
bool DiagnosticRelatedInformation = false
 Whether the client accepts diagnostics with related locations. More...
 
bool DiagnosticCategory = false
 Whether the client accepts diagnostics with category attached to it using the "category" extension. More...
 
bool CompletionSnippets = false
 Client supports snippets as insert text. More...
 
bool CompletionFixes = false
 Client supports completions with additionalTextEdit near the cursor. More...
 
bool HierarchicalDocumentSymbol = false
 Client supports hierarchical document symbols. More...
 
bool HasSignatureHelp = false
 Client supports signature help. More...
 
bool OffsetsInSignatureHelp = false
 Client supports processing label offsets instead of a simple label string. More...
 
llvm::Optional< CompletionItemKindBitsetCompletionItemKinds
 The supported set of CompletionItemKinds for textDocument/completion. More...
 
MarkupKind CompletionDocumentationFormat = MarkupKind::PlainText
 The documentation format that should be used for textDocument/completion. More...
 
bool CodeActionStructure = false
 Client supports CodeAction return value for textDocument/codeAction. More...
 
bool SemanticTokens = false
 Client advertises support for the semanticTokens feature. More...
 
bool TheiaSemanticHighlighting = false
 Client supports Theia semantic highlighting extension. More...
 
llvm::Optional< std::vector< OffsetEncoding > > offsetEncoding
 Supported encodings for LSP character offsets. (clangd extension). More...
 
MarkupKind HoverContentFormat = MarkupKind::PlainText
 The content format that should be used for Hover requests. More...
 
bool RenamePrepareSupport = false
 The client supports testing for validity of rename operations before execution. More...
 
bool WorkDoneProgress = false
 The client supports progress notifications. More...
 
bool ImplicitProgressCreation = false
 The client supports implicit $/progress work-done progress streams, without a preceding window/workDoneProgress/create. More...
 
bool CancelsStaleRequests = false
 Whether the client claims to cancel stale requests. More...
 
bool SemanticTokenRefreshSupport = false
 Whether the client implementation supports a refresh request sent from the server to the client. More...
 

Detailed Description

Definition at line 397 of file Protocol.h.

Member Data Documentation

◆ CancelsStaleRequests

bool clang::clangd::ClientCapabilities::CancelsStaleRequests = false

Whether the client claims to cancel stale requests.

general.staleRequestSupport.cancel

Definition at line 481 of file Protocol.h.

◆ CodeActionStructure

bool clang::clangd::ClientCapabilities::CodeActionStructure = false

Client supports CodeAction return value for textDocument/codeAction.

textDocument.codeAction.codeActionLiteralSupport.

Definition at line 446 of file Protocol.h.

◆ CompletionDocumentationFormat

MarkupKind clang::clangd::ClientCapabilities::CompletionDocumentationFormat = MarkupKind::PlainText

The documentation format that should be used for textDocument/completion.

textDocument.completion.completionItem.documentationFormat

Definition at line 442 of file Protocol.h.

◆ CompletionFixes

bool clang::clangd::ClientCapabilities::CompletionFixes = false

Client supports completions with additionalTextEdit near the cursor.

This is a clangd extension. (LSP says this is for unrelated text only). textDocument.completion.editsNearCursor

Definition at line 422 of file Protocol.h.

◆ CompletionItemKinds

llvm::Optional<CompletionItemKindBitset> clang::clangd::ClientCapabilities::CompletionItemKinds

The supported set of CompletionItemKinds for textDocument/completion.

textDocument.completion.completionItemKind.valueSet

Definition at line 438 of file Protocol.h.

◆ CompletionSnippets

bool clang::clangd::ClientCapabilities::CompletionSnippets = false

Client supports snippets as insert text.

textDocument.completion.completionItem.snippetSupport

Definition at line 417 of file Protocol.h.

◆ DiagnosticCategory

bool clang::clangd::ClientCapabilities::DiagnosticCategory = false

Whether the client accepts diagnostics with category attached to it using the "category" extension.

textDocument.publishDiagnostics.categorySupport

Definition at line 413 of file Protocol.h.

Referenced by clang::clangd::fromJSON().

◆ DiagnosticFixes

bool clang::clangd::ClientCapabilities::DiagnosticFixes = false

Whether the client accepts diagnostics with codeActions attached inline.

textDocument.publishDiagnostics.codeActionsInline.

Definition at line 404 of file Protocol.h.

Referenced by clang::clangd::fromJSON().

◆ DiagnosticRelatedInformation

bool clang::clangd::ClientCapabilities::DiagnosticRelatedInformation = false

Whether the client accepts diagnostics with related locations.

textDocument.publishDiagnostics.relatedInformation.

Definition at line 408 of file Protocol.h.

Referenced by clang::clangd::fromJSON().

◆ HasSignatureHelp

bool clang::clangd::ClientCapabilities::HasSignatureHelp = false

Client supports signature help.

textDocument.signatureHelp

Definition at line 430 of file Protocol.h.

◆ HierarchicalDocumentSymbol

bool clang::clangd::ClientCapabilities::HierarchicalDocumentSymbol = false

Client supports hierarchical document symbols.

textDocument.documentSymbol.hierarchicalDocumentSymbolSupport

Definition at line 426 of file Protocol.h.

◆ HoverContentFormat

MarkupKind clang::clangd::ClientCapabilities::HoverContentFormat = MarkupKind::PlainText

The content format that should be used for Hover requests.

textDocument.hover.contentEncoding

Definition at line 463 of file Protocol.h.

◆ ImplicitProgressCreation

bool clang::clangd::ClientCapabilities::ImplicitProgressCreation = false

The client supports implicit $/progress work-done progress streams, without a preceding window/workDoneProgress/create.

This is a clangd extension. window.implicitWorkDoneProgressCreate

Definition at line 477 of file Protocol.h.

◆ offsetEncoding

llvm::Optional<std::vector<OffsetEncoding> > clang::clangd::ClientCapabilities::offsetEncoding

Supported encodings for LSP character offsets. (clangd extension).

Definition at line 459 of file Protocol.h.

◆ OffsetsInSignatureHelp

bool clang::clangd::ClientCapabilities::OffsetsInSignatureHelp = false

Client supports processing label offsets instead of a simple label string.

textDocument.signatureHelp.signatureInformation.parameterInformation.labelOffsetSupport

Definition at line 434 of file Protocol.h.

◆ RenamePrepareSupport

bool clang::clangd::ClientCapabilities::RenamePrepareSupport = false

The client supports testing for validity of rename operations before execution.

Definition at line 467 of file Protocol.h.

◆ SemanticTokenRefreshSupport

bool clang::clangd::ClientCapabilities::SemanticTokenRefreshSupport = false

Whether the client implementation supports a refresh request sent from the server to the client.

Definition at line 485 of file Protocol.h.

◆ SemanticTokens

bool clang::clangd::ClientCapabilities::SemanticTokens = false

Client advertises support for the semanticTokens feature.

We support the textDocument/semanticTokens request in any case. textDocument.semanticTokens

Definition at line 451 of file Protocol.h.

Referenced by clang::clangd::fromJSON().

◆ TheiaSemanticHighlighting

bool clang::clangd::ClientCapabilities::TheiaSemanticHighlighting = false

Client supports Theia semantic highlighting extension.

https://github.com/microsoft/vscode-languageserver-node/pull/367 clangd no longer supports this, we detect it just to log a warning. textDocument.semanticHighlightingCapabilities.semanticHighlighting

Definition at line 456 of file Protocol.h.

Referenced by clang::clangd::fromJSON().

◆ WorkDoneProgress

bool clang::clangd::ClientCapabilities::WorkDoneProgress = false

The client supports progress notifications.

window.workDoneProgress

Definition at line 471 of file Protocol.h.

◆ WorkspaceSymbolKinds

llvm::Optional<SymbolKindBitset> clang::clangd::ClientCapabilities::WorkspaceSymbolKinds

The supported set of SymbolKinds for workspace/symbol.

workspace.symbol.symbolKind.valueSet

Definition at line 400 of file Protocol.h.


The documentation for this struct was generated from the following file: