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.
Constructor
new(name:String, detail:String, kind:SymbolKind, range:Range, selectionRange:Range)
Creates a new document symbol.
Parameters:
name | The name of the symbol. |
---|---|
detail | Details for the symbol. |
kind | The kind of the symbol. |
range | The full range of the symbol. |
selectionRange | The range that should be reveal. |
Variables
range:Range
The range enclosing this symbol not including leading/trailing whitespace but everything else, e.g. comments and code.
selectionRange:Range
The range that should be selected and reveal when this symbol is being picked, e.g. the name of a function. Must be contained by the {@linkcode DocumentSymbol.range range}.