class

LSProtocol::LocationLink

Inherits JSON::Serializable / Reference / Object

Represents the connection of two locations. Provides additional metadata over normal Location, including an origin range.

Constructors

new(target_range : Range | Nil, target_selection_range : Range | Nil, target_uri : URI | Nil, origin_selection_range : Range | Nil = nil)
Source
new(pull : JSON::PullParser)
Source
new(*, __pull_for_json_serializable pull : JSON::PullParser)
Source

Instance methods

origin_selection_range

Span of the origin of this link.

Used as the underlined span for mouse interaction. Defaults to the word range at the definition position.

Source
target_range

The full target range of this link. If the target for example is a symbol then target range is the range enclosing this symbol not including leading/trailing whitespace but everything else like comments. This information is typically used to highlight the range in the editor.

Source
target_selection_range

The range that should be selected and revealed when this link is being followed, e.g the name of a function. Must be contained by the targetRange. See also DocumentSymbol#range

Source
target_uri

The target resource identifier of this link.

Source