class LanguageServer::Protocol::Interface::DiagnosticRegistrationOptions
Diagnostic registration options.
Attributes
Public Class Methods
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 8 def initialize(document_selector:, work_done_progress: nil, identifier: nil, inter_file_dependencies:, workspace_diagnostics:, id: nil) @attributes = {} @attributes[:documentSelector] = document_selector @attributes[:workDoneProgress] = work_done_progress if work_done_progress @attributes[:identifier] = identifier if identifier @attributes[:interFileDependencies] = inter_file_dependencies @attributes[:workspaceDiagnostics] = workspace_diagnostics @attributes[:id] = id if id @attributes.freeze end
Public Instance Methods
A document selector to identify the scope of the registration. If set to null the document selector provided on the client side will be used.
@return [DocumentSelector]
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 26 def document_selector attributes.fetch(:documentSelector) end
The id used to register the request. The id can be used to deregister the request again. See also Registration#id.
@return [string]
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 68 def id attributes.fetch(:id) end
An optional identifier under which the diagnostics are managed by the client.
@return [string]
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 40 def identifier attributes.fetch(:identifier) end
Whether the language has inter file dependencies meaning that editing code in one file can result in a different diagnostic set in another file. Inter file dependencies are common for most programming languages and typically uncommon for linters.
@return [boolean]
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 51 def inter_file_dependencies attributes.fetch(:interFileDependencies) end
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 74 def to_hash attributes end
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 78 def to_json(*args) to_hash.to_json(*args) end
@return [boolean]
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 31 def work_done_progress attributes.fetch(:workDoneProgress) end
The server provides support for workspace diagnostics as well.
@return [boolean]
# File lib/language_server/protocol/interface/diagnostic_registration_options.rb, line 59 def workspace_diagnostics attributes.fetch(:workspaceDiagnostics) end