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
12
# File 'lib/language_server/protocol/interface/versioned_text_document_identifier.rb', line 5

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

  @attributes[:uri] = uri
  @attributes[:version] = version

  @attributes.freeze
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



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

def attributes
  @attributes
end

Instance Method Details

#to_hashObject



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

def to_hash
  attributes
end

#to_json(*args) ⇒ Object



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

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 master (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)


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

def version
  attributes.fetch(:version)
end