Class: LanguageServer::Protocol::Interface::VersionedTextDocumentIdentifier

Inherits:
TextDocumentIdentifier show all
Defined in:
lib/language_server/protocol/interface/versioned_text_document_identifier.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from TextDocumentIdentifier

#uri

Constructor Details

#initialize(uri:, version:) ⇒ VersionedTextDocumentIdentifier

Returns a new instance of VersionedTextDocumentIdentifier.



5
6
7
8
9
10
11
# File 'lib/language_server/protocol/interface/versioned_text_document_identifier.rb', line 5

def initialize(uri:, version:)
  @attributes = {}

  @attributes[:version] = version

  @attributes.freeze
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



28
29
30
# File 'lib/language_server/protocol/interface/versioned_text_document_identifier.rb', line 28

def attributes
  @attributes
end

Instance Method Details

#to_hashObject



30
31
32
# File 'lib/language_server/protocol/interface/versioned_text_document_identifier.rb', line 30

def to_hash
  attributes
end

#to_json(*args) ⇒ Object



34
35
36
# File 'lib/language_server/protocol/interface/versioned_text_document_identifier.rb', line 34

def to_json(*args)
  to_hash.to_json(*args)
end

#versionnumber

The version number of this document. If a versioned text document identifier is sent from the server to the client and the file is not open in the editor (the server has not received an open notification before) the server can send ‘null` to indicate that the version is known and the content on disk is the truth (as speced with document content ownership).

The version number of a document will increase after each change, including undo/redo. The number doesn’t need to be consecutive.

Returns:

  • (number)


24
25
26
# File 'lib/language_server/protocol/interface/versioned_text_document_identifier.rb', line 24

def version
  attributes.fetch(:version)
end