Class: LanguageServer::Protocol::Interface::DiagnosticRegistrationOptions
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::DiagnosticRegistrationOptions
- Defined in:
- lib/language_server/protocol/interface/diagnostic_registration_options.rb
Overview
Diagnostic registration options.
Instance Attribute Summary collapse
- #attributes ⇒ Object readonly
Instance Method Summary collapse
-
#document_selector ⇒ DocumentSelector | null
A document selector to identify the scope of the registration.
-
#id ⇒ string | nil
The id used to register the request.
-
#identifier ⇒ string | nil
An optional identifier under which the diagnostics are managed by the client.
-
#initialize(document_selector:, identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil, id: nil) ⇒ DiagnosticRegistrationOptions
constructor
A new instance of DiagnosticRegistrationOptions.
-
#inter_file_dependencies ⇒ boolean
Whether the language has inter file dependencies meaning that editing code in one file can result in a different diagnostic set in another file.
- #to_hash ⇒ Object
- #to_json(*args) ⇒ Object
- #work_done_progress ⇒ boolean | nil
-
#workspace_diagnostics ⇒ boolean
The server provides support for workspace diagnostics as well.
Constructor Details
#initialize(document_selector:, identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil, id: nil) ⇒ DiagnosticRegistrationOptions
Returns a new instance of DiagnosticRegistrationOptions.
10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 10 def initialize(document_selector:, identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil, id: nil) @attributes = {} @attributes[:documentSelector] = document_selector @attributes[:identifier] = identifier if identifier @attributes[:interFileDependencies] = inter_file_dependencies @attributes[:workspaceDiagnostics] = workspace_diagnostics @attributes[:workDoneProgress] = work_done_progress if work_done_progress @attributes[:id] = id if id @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
74 75 76 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 74 def attributes @attributes end |
Instance Method Details
#document_selector ⇒ DocumentSelector | null
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.
28 29 30 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 28 def document_selector attributes.fetch(:documentSelector) end |
#id ⇒ string | nil
The id used to register the request. The id can be used to deregister the request again. See also Registration#id.
70 71 72 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 70 def id attributes.fetch(:id) end |
#identifier ⇒ string | nil
An optional identifier under which the diagnostics are managed by the client.
37 38 39 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 37 def identifier attributes.fetch(:identifier) end |
#inter_file_dependencies ⇒ boolean
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.
48 49 50 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 48 def inter_file_dependencies attributes.fetch(:interFileDependencies) end |
#to_hash ⇒ Object
76 77 78 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 76 def to_hash attributes end |
#to_json(*args) ⇒ Object
80 81 82 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 80 def to_json(*args) to_hash.to_json(*args) end |
#work_done_progress ⇒ boolean | nil
61 62 63 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 61 def work_done_progress attributes.fetch(:workDoneProgress) end |
#workspace_diagnostics ⇒ boolean
The server provides support for workspace diagnostics as well.
56 57 58 |
# File 'lib/language_server/protocol/interface/diagnostic_registration_options.rb', line 56 def workspace_diagnostics attributes.fetch(:workspaceDiagnostics) end |