CodeAction

langoustine.lsp.structures.CodeAction
See theCodeAction companion object
case class CodeAction(title: String, kind: Opt[CodeActionKind], diagnostics: Opt[Vector[Diagnostic]], isPreferred: Opt[Boolean], disabled: Opt[Disabled], edit: Opt[WorkspaceEdit], command: Opt[Command], data: Opt[Value])

A code action represents a change that can be performed in code, e.g. to fix a problem or to refactor code.

A CodeAction must set either edit and/or a command. If both are supplied, the edit is applied first, then the command is executed.

Value parameters

command

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.

data

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

diagnostics

The diagnostics that this code action resolves.

disabled

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 requests a more specific type of code action, such as refactorings. - If the user has a keybinding that auto applies a code action and only disabled code actions are returned, the client should show the user an error message with reason in the editor. since 3.16.0

edit

The workspace edit this code action performs.

isPreferred

Marks this as a preferred action. Preferred actions are used by the auto fix command and can be targeted by keybindings. A quick fix should be marked preferred if it properly addresses the underlying error. A refactoring should be marked preferred if it is the most reasonable choice of actions to take. since 3.15.0

kind

The kind of the code action. Used to filter code actions.

title

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

Attributes

Companion
object
Source
structures.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product