clang-tools 19.0.0git
Public Attributes | List of all members
clang::clangd::DocumentSymbol Struct Reference

Represents programming constructs like variables, classes, interfaces etc. More...

#include <Protocol.h>

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
 The range enclosing this symbol not including leading/trailing whitespace but everything else like comments.
 
Range selectionRange
 The range that should be selected and revealed when this symbol is being picked, e.g the name of a function.
 
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 1097 of file Protocol.h.

Member Data Documentation

◆ children

std::vector<DocumentSymbol> clang::clangd::DocumentSymbol::children

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

Definition at line 1121 of file Protocol.h.

◆ deprecated

bool clang::clangd::DocumentSymbol::deprecated = false

Indicates if this symbol is deprecated.

Definition at line 1108 of file Protocol.h.

◆ detail

std::string clang::clangd::DocumentSymbol::detail

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

Definition at line 1102 of file Protocol.h.

◆ kind

SymbolKind clang::clangd::DocumentSymbol::kind

The kind of this symbol.

Definition at line 1105 of file Protocol.h.

◆ name

std::string clang::clangd::DocumentSymbol::name

The name of this symbol.

Definition at line 1099 of file Protocol.h.

◆ range

Range clang::clangd::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 1114 of file Protocol.h.

◆ selectionRange

Range clang::clangd::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 1118 of file Protocol.h.


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