Class: LanguageServer::Protocol::Interface::WorkDoneProgressReport
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::WorkDoneProgressReport
- Defined in:
- lib/language_server/protocol/interface/work_done_progress_report.rb,
sig/language_server/protocol/interface/work_done_progress_report.rbs
Instance Attribute Summary collapse
-
#attributes ⇒ Hash[Symbol, untyped]
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
-
#cancellable ⇒ boolean
Controls enablement state of a cancel button.
-
#initialize(kind:, cancellable: nil, message: nil, percentage: nil) ⇒ WorkDoneProgressReport
constructor
A new instance of WorkDoneProgressReport.
- #kind ⇒ "report"
-
#message ⇒ string
Optional, more detailed associated progress message.
-
#percentage ⇒ uinteger
Optional progress percentage to display (value 100 is considered 100%).
- #to_hash ⇒ Hash[Symbol, untyped]
- #to_json(*args) ⇒ String
Constructor Details
#initialize(kind:, cancellable: nil, message: nil, percentage: nil) ⇒ WorkDoneProgressReport
Returns a new instance of WorkDoneProgressReport.
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 5 def initialize(kind:, cancellable: nil, message: nil, percentage: nil) @attributes = {} @attributes[:kind] = kind @attributes[:cancellable] = cancellable if cancellable @attributes[:message] = if @attributes[:percentage] = percentage if percentage @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Hash[Symbol, untyped] (readonly)
Returns the value of attribute attributes.
57 58 59 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 57 def attributes @attributes end |
Instance Method Details
#cancellable ⇒ boolean
Controls enablement state of a cancel button.
Clients that don't support cancellation or don't support controlling the button's enablement state are allowed to ignore the property.
28 29 30 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 28 def cancellable attributes.fetch(:cancellable) end |
#kind ⇒ "report"
17 18 19 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 17 def kind attributes.fetch(:kind) end |
#message ⇒ string
Optional, more detailed associated progress message. Contains
complementary information to the title.
Examples: "3/25 files", "project/src/module2", "node_modules/some_dep". If unset, the previous progress message (if any) is still valid.
40 41 42 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 40 def attributes.fetch(:message) end |
#percentage ⇒ uinteger
Optional progress percentage to display (value 100 is considered 100%).
If not provided infinite progress is assumed and clients are allowed
to ignore the percentage value in subsequent in report notifications.
The value should be steadily rising. Clients are free to ignore values that are not following this rule. The value range is [0, 100]
53 54 55 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 53 def percentage attributes.fetch(:percentage) end |
#to_hash ⇒ Hash[Symbol, untyped]
59 60 61 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 59 def to_hash attributes end |
#to_json(*args) ⇒ String
63 64 65 |
# File 'lib/language_server/protocol/interface/work_done_progress_report.rb', line 63 def to_json(*args) to_hash.to_json(*args) end |