Sha256: 9ce99d77c014446e7e620e80cfaa6f72a0a30d69907424d52ac4c447bb00ed6a
Contents?: true
Size: 1.73 KB
Versions: 106
Compression:
Stored size: 1.73 KB
Contents
module LanguageServer module Protocol module Interface class ColorPresentationParams def initialize(work_done_token: nil, partial_result_token: nil, text_document:, color:, range:) @attributes = {} @attributes[:workDoneToken] = work_done_token if work_done_token @attributes[:partialResultToken] = partial_result_token if partial_result_token @attributes[:textDocument] = text_document @attributes[:color] = color @attributes[:range] = range @attributes.freeze end # # An optional token that a server can use to report work done progress. # # @return [ProgressToken] def work_done_token attributes.fetch(:workDoneToken) end # # An optional token that a server can use to report partial results (e.g. # streaming) to the client. # # @return [ProgressToken] def partial_result_token attributes.fetch(:partialResultToken) end # # The text document. # # @return [TextDocumentIdentifier] def text_document attributes.fetch(:textDocument) end # # The color information to request presentations for. # # @return [Color] def color attributes.fetch(:color) end # # The range where the color would be inserted. Serves as a context. # # @return [Range] def range attributes.fetch(:range) end attr_reader :attributes def to_hash attributes end def to_json(*args) to_hash.to_json(*args) end end end end end
Version data entries
106 entries across 106 versions & 13 rubygems