nixd
Loading...
Searching...
No Matches
lspserver::DocumentSymbol Struct Reference

#include <Protocol.h>

Collaboration diagram for lspserver::DocumentSymbol:
[legend]

Public Attributes

std::string name
 The name of this symbol.
std::string detail
 More detail for this symbol, e.g the signature of a function.
SymbolKind kind
 The kind of this symbol.
bool deprecated = false
 Indicates if this symbol is deprecated.
Range range
Range selectionRange
std::vector< DocumentSymbolchildren
 Children of this symbol, e.g. properties of a class.

Detailed Description

Represents programming constructs like variables, classes, interfaces etc. that appear in a document. Document symbols can be hierarchical and they have two ranges: one that encloses its definition and one that points to its most interesting range, e.g. the range of an identifier.

Definition at line 1163 of file lspserver/include/lspserver/Protocol.h.

Member Data Documentation

◆ children

std::vector<DocumentSymbol> lspserver::DocumentSymbol::children

Children of this symbol, e.g. properties of a class.

Definition at line 1187 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::toJSON().

◆ deprecated

bool lspserver::DocumentSymbol::deprecated = false

Indicates if this symbol is deprecated.

Definition at line 1174 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::toJSON().

◆ detail

std::string lspserver::DocumentSymbol::detail

More detail for this symbol, e.g the signature of a function.

Definition at line 1168 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::toJSON().

◆ kind

SymbolKind lspserver::DocumentSymbol::kind

The kind of this symbol.

Definition at line 1171 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::toJSON().

◆ name

std::string lspserver::DocumentSymbol::name

The name of this symbol.

Definition at line 1165 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::operator<<(), and lspserver::toJSON().

◆ range

Range lspserver::DocumentSymbol::range

The range enclosing this symbol not including leading/trailing whitespace but everything else like comments. This information is typically used to determine if the clients cursor is inside the symbol to reveal in the symbol in the UI.

Definition at line 1180 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::toJSON().

◆ selectionRange

Range lspserver::DocumentSymbol::selectionRange

The range that should be selected and revealed when this symbol is being picked, e.g the name of a function. Must be contained by the range.

Definition at line 1184 of file lspserver/include/lspserver/Protocol.h.

Referenced by lspserver::toJSON().


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