Class: LanguageServer::Protocol::Interface::DocumentLink
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::DocumentLink
- Defined in:
- lib/language_server/protocol/interface/document_link.rb
Overview
A document link is a range in a text document that links to an internal or external resource, like another text document or a web site.
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
-
#data ⇒ any
A data entry field that is preserved on a document link between a DocumentLinkRequest and a DocumentLinkResolveRequest.
-
#initialize(range:, target: nil, data: nil) ⇒ DocumentLink
constructor
A new instance of DocumentLink.
-
#range ⇒ Range
The range this link applies to.
-
#target ⇒ string
The uri this link points to.
- #to_hash ⇒ Object
- #to_json(*args) ⇒ Object
Constructor Details
#initialize(range:, target: nil, data: nil) ⇒ DocumentLink
Returns a new instance of DocumentLink.
9 10 11 12 13 14 15 16 17 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 9 def initialize(range:, target: nil, data: nil) @attributes = {} @attributes[:range] = range @attributes[:target] = target if target @attributes[:data] = data if data @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
44 45 46 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 44 def attributes @attributes end |
Instance Method Details
#data ⇒ any
A data entry field that is preserved on a document link between a DocumentLinkRequest and a DocumentLinkResolveRequest.
40 41 42 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 40 def data attributes.fetch(:data) end |
#range ⇒ Range
The range this link applies to.
23 24 25 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 23 def range attributes.fetch(:range) end |
#target ⇒ string
The uri this link points to. If missing a resolve request is sent later.
31 32 33 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 31 def target attributes.fetch(:target) end |
#to_hash ⇒ Object
46 47 48 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 46 def to_hash attributes end |
#to_json(*args) ⇒ Object
50 51 52 |
# File 'lib/language_server/protocol/interface/document_link.rb', line 50 def to_json(*args) to_hash.to_json(*args) end |