class LanguageServer::Protocol::Interface::WorkDoneProgressBegin
Attributes
Public Class Methods
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 5 def initialize(kind:, title:, cancellable: nil, message: nil, percentage: nil) @attributes = {} @attributes[:kind] = kind @attributes[:title] = title @attributes[:cancellable] = cancellable if cancellable @attributes[:message] = message if message @attributes[:percentage] = percentage if percentage @attributes.freeze end
Public Instance Methods
Controls if a cancel button should show to allow the user to cancel the long running operation. Clients that don't support cancellation are allowed to ignore the setting.
@return [boolean]
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 39 def cancellable attributes.fetch(:cancellable) end
@return [“begin”]
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 18 def kind attributes.fetch(:kind) end
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.
@return [string]
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 51 def message attributes.fetch(:message) end
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]
@return [number]
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 64 def percentage attributes.fetch(:percentage) end
Mandatory title of the progress operation. Used to briefly inform about the kind of operation being performed.
Examples: “Indexing” or “Linking dependencies”.
@return [string]
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 29 def title attributes.fetch(:title) end
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 70 def to_hash attributes end
# File lib/language_server/protocol/interface/work_done_progress_begin.rb, line 74 def to_json(*args) to_hash.to_json(*args) end