class LSProtocol::WorkDoneProgressBegin

Included Modules

Defined in:

lsprotocol/types.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(kind : String | Nil, title : String | Nil, cancellable : Bool | Nil = nil, message : String | Nil = nil, percentage : UInt32 | Nil = nil) #

[View source]
def self.new(pull : JSON::PullParser) #

[View source]

Instance Method Detail

def cancellable : Bool | Nil #

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.


[View source]
def kind : String #

[View source]
def message : String | Nil #

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.


[View source]
def percentage : UInt32 | Nil #

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].


[View source]
def title : String #

Mandatory title of the progress operation. Used to briefly inform about the kind of operation being performed.

Examples: "Indexing" or "Linking dependencies".


[View source]