Class: LanguageServer::Protocol::Interface::DiagnosticOptions
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::DiagnosticOptions
- Defined in:
- lib/language_server/protocol/interface/diagnostic_options.rb
Overview
Diagnostic options.
Instance Attribute Summary collapse
- #attributes ⇒ Object readonly
Instance Method Summary collapse
-
#identifier ⇒ string | nil
An optional identifier under which the diagnostics are managed by the client.
-
#initialize(identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil) ⇒ DiagnosticOptions
constructor
A new instance of DiagnosticOptions.
-
#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(identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil) ⇒ DiagnosticOptions
Returns a new instance of DiagnosticOptions.
10 11 12 13 14 15 16 17 18 19 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 10 def initialize(identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil) @attributes = {} @attributes[:identifier] = identifier if identifier @attributes[:interFileDependencies] = inter_file_dependencies @attributes[:workspaceDiagnostics] = workspace_diagnostics @attributes[:workDoneProgress] = work_done_progress if work_done_progress @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
54 55 56 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 54 def attributes @attributes end |
Instance Method Details
#identifier ⇒ string | nil
An optional identifier under which the diagnostics are managed by the client.
26 27 28 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 26 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.
37 38 39 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 37 def inter_file_dependencies attributes.fetch(:interFileDependencies) end |
#to_hash ⇒ Object
56 57 58 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 56 def to_hash attributes end |
#to_json(*args) ⇒ Object
60 61 62 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 60 def to_json(*args) to_hash.to_json(*args) end |
#work_done_progress ⇒ boolean | nil
50 51 52 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 50 def work_done_progress attributes.fetch(:workDoneProgress) end |
#workspace_diagnostics ⇒ boolean
The server provides support for workspace diagnostics as well.
45 46 47 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 45 def workspace_diagnostics attributes.fetch(:workspaceDiagnostics) end |