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
Returns the value of attribute attributes.
Instance Method Summary collapse
-
#identifier ⇒ string
An optional identifier under which the diagnostics are managed by the client.
-
#initialize(work_done_progress: nil, identifier: nil, inter_file_dependencies:, workspace_diagnostics:) ⇒ 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
-
#workspace_diagnostics ⇒ boolean
The server provides support for workspace diagnostics as well.
Constructor Details
#initialize(work_done_progress: nil, identifier: nil, inter_file_dependencies:, workspace_diagnostics:) ⇒ DiagnosticOptions
Returns a new instance of DiagnosticOptions.
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 8 def initialize(work_done_progress: nil, identifier: nil, inter_file_dependencies:, workspace_diagnostics:) @attributes = {} @attributes[:workDoneProgress] = work_done_progress if work_done_progress @attributes[:identifier] = identifier if identifier @attributes[:interFileDependencies] = inter_file_dependencies @attributes[:workspaceDiagnostics] = workspace_diagnostics @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
52 53 54 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 52 def attributes @attributes end |
Instance Method Details
#identifier ⇒ string
An optional identifier under which the diagnostics are managed by the client.
29 30 31 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 29 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.
40 41 42 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 40 def inter_file_dependencies attributes.fetch(:interFileDependencies) end |
#to_hash ⇒ Object
54 55 56 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 54 def to_hash attributes end |
#to_json(*args) ⇒ Object
58 59 60 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 58 def to_json(*args) to_hash.to_json(*args) end |
#work_done_progress ⇒ boolean
20 21 22 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 20 def work_done_progress attributes.fetch(:workDoneProgress) end |
#workspace_diagnostics ⇒ boolean
The server provides support for workspace diagnostics as well.
48 49 50 |
# File 'lib/language_server/protocol/interface/diagnostic_options.rb', line 48 def workspace_diagnostics attributes.fetch(:workspaceDiagnostics) end |