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.

Constructors

Properties

children: DocumentSymbol[]

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

detail: string

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

The kind of this symbol.

name: string

The name of this symbol.

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 range.

tags?: readonly Deprecated[]