struct LSP::CodeAction

Overview

Code Action options.

Included Modules

Defined in:

lsp/protocol/code_action.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(title : String, kind : Nil | String, edit : LSP::WorkspaceEdit | Nil, diagnostics : Nil | Array(LSP::Diagnostic) = [] of Diagnostic, is_preferred : Bool | Nil = false, disabled : LSP::CodeAction::Disabled | Nil = nil, command : LSP::Command | Nil = nil, data : Nil | String = nil) #

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

[View source]

Instance Method Detail

def command : Command | Nil #

A command this code action executes. If a code action provides an edit and a command, first the edit is executed and then the command.


[View source]
def command=(command : Command | Nil) #

A command this code action executes. If a code action provides an edit and a command, first the edit is executed and then the command.


[View source]
def data : String | Nil #

A data entry field that is preserved on a code action between a textDocument/codeAction and a codeAction/resolve request.

@since 3.16.0


[View source]
def data=(data : String | Nil) #

A data entry field that is preserved on a code action between a textDocument/codeAction and a codeAction/resolve request.

@since 3.16.0


[View source]
def diagnostics : Array(Diagnostic) | Nil #

The diagnostics that this code action resolves.


[View source]
def diagnostics=(diagnostics : Array(Diagnostic) | Nil) #

The diagnostics that this code action resolves.


[View source]
def disabled : Disabled | Nil #

Marks that the code action cannot currently be applied.

Clients should follow the following guidelines regarding disabled code actions:

  • Disabled code actions are not shown in automatic lightbulbs code action menus.

  • Disabled actions are shown as faded out in the code action menu when the user request a more specific type of code action, such as refactorings.

  • If the user has a keybinding that auto applies a code action and only a disabled code actions are returned, the client should show the user an error message with reason in the editor.

@since 3.16.0


[View source]
def disabled=(disabled : Disabled | Nil) #

Marks that the code action cannot currently be applied.

Clients should follow the following guidelines regarding disabled code actions:

  • Disabled code actions are not shown in automatic lightbulbs code action menus.

  • Disabled actions are shown as faded out in the code action menu when the user request a more specific type of code action, such as refactorings.

  • If the user has a keybinding that auto applies a code action and only a disabled code actions are returned, the client should show the user an error message with reason in the editor.

@since 3.16.0


[View source]
def edit : WorkspaceEdit | Nil #

The workspace edit this code action performs.


[View source]
def edit=(edit : WorkspaceEdit | Nil) #

The workspace edit this code action performs.


[View source]
def is_preferred : Bool | Nil #

[View source]
def is_preferred=(is_preferred : Bool | Nil) #

[View source]
def kind : String | Nil #

The kind of the code action.

Used to filter code actions.


[View source]
def kind=(kind : String | Nil) #

The kind of the code action.

Used to filter code actions.


[View source]
def title : String #

A short, human-readable, title for this code action.


[View source]
def title=(title : String) #

A short, human-readable, title for this code action.


[View source]