<!doctype html>
< html class = "default no-js" >
< head >
< meta charset = "utf-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< title > CodeAction | VS Code API< / title >
< meta name = "description" content = "Documentation for VS Code API" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< link rel = "stylesheet" href = "../assets/css/main.css" >
< script async src = "../assets/js/search.js" id = "search-script" > < / script >
< / head >
< body >
< header >
< div class = "tsd-page-toolbar" >
< div class = "container" >
< div class = "table-wrap" >
< div class = "table-cell" id = "tsd-search" data-index = "../assets/js/search.json" data-base = ".." >
< div class = "field" >
< label for = "tsd-search-field" class = "tsd-widget search no-caption" > Search< / label >
< input id = "tsd-search-field" type = "text" / >
< / div >
< ul class = "results" >
< li class = "state loading" > Preparing search index...< / li >
< li class = "state failure" > The search index is not available< / li >
< / ul >
< a href = "../index.html" class = "title" > VS Code API< / a >
< / div >
< div class = "table-cell" id = "tsd-widgets" >
< div id = "tsd-filter" >
< a href = "#" class = "tsd-widget options no-caption" data-toggle = "options" > Options< / a >
< div class = "tsd-filter-group" >
< div class = "tsd-select" id = "tsd-filter-visibility" >
< span class = "tsd-select-label" > All< / span >
< ul class = "tsd-select-list" >
< li data-value = "public" > Public< / li >
< li data-value = "protected" > Public/Protected< / li >
< li data-value = "private" class = "selected" > All< / li >
< / ul >
< / div >
< input type = "checkbox" id = "tsd-filter-inherited" checked / >
< label class = "tsd-widget" for = "tsd-filter-inherited" > Inherited< / label >
< input type = "checkbox" id = "tsd-filter-externals" checked / >
< label class = "tsd-widget" for = "tsd-filter-externals" > Externals< / label >
< / div >
< / div >
< a href = "#" class = "tsd-widget menu no-caption" data-toggle = "menu" > Menu< / a >
< / div >
< / div >
< / div >
< / div >
< div class = "tsd-page-title" >
< div class = "container" >
< ul class = "tsd-breadcrumb" >
< li >
< a href = "../modules.html" > VS Code API< / a >
< / li >
< li >
< a href = "CodeAction.html" > CodeAction< / a >
< / li >
< / ul >
< h1 > Class CodeAction< / h1 >
< / div >
< / div >
< / header >
< div class = "container container-main" >
< div class = "row" >
< div class = "col-8 col-content" >
< section class = "tsd-panel tsd-comment" >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > A code action represents a change that can be performed in code, e.g. to fix a problem or
to refactor code.< / p >
< / div >
< p > A CodeAction must set either < a href = "CodeAction.html#edit" > < code > edit< / code > < / a > and/or a < a href = "CodeAction.html#command" > < code > command< / code > < / a > . If both are supplied, the < code > edit< / code > is applied first, then the command is executed.< / p >
< / div >
< / section >
< section class = "tsd-panel tsd-hierarchy" >
< h3 > Hierarchy< / h3 >
< ul class = "tsd-hierarchy" >
< li >
< span class = "target" > CodeAction< / span >
< / li >
< / ul >
< / section >
< section class = "tsd-panel-group tsd-index-group" >
< h2 > Index< / h2 >
< section class = "tsd-panel tsd-index-panel" >
< div class = "tsd-index-content" >
< section class = "tsd-index-section " >
< h3 > Constructors< / h3 >
< ul class = "tsd-index-list" >
< li class = "tsd-kind-constructor tsd-parent-kind-class" > < a href = "CodeAction.html#constructor" class = "tsd-kind-icon" > constructor< / a > < / li >
< / ul >
< / section >
< section class = "tsd-index-section " >
< h3 > Properties< / h3 >
< ul class = "tsd-index-list" >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#title" class = "tsd-kind-icon" > title< / a > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#edit" class = "tsd-kind-icon" > edit< / a > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#diagnostics" class = "tsd-kind-icon" > diagnostics< / a > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#command" class = "tsd-kind-icon" > command< / a > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#kind" class = "tsd-kind-icon" > kind< / a > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#isPreferred" class = "tsd-kind-icon" > is< wbr > Preferred< / a > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < a href = "CodeAction.html#disabled" class = "tsd-kind-icon" > disabled< / a > < / li >
< / ul >
< / section >
< / div >
< / section >
< / section >
< section class = "tsd-panel-group tsd-member-group " >
< h2 > Constructors< / h2 >
< section class = "tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class" >
< a name = "constructor" class = "tsd-anchor" > < / a >
< h3 > constructor< / h3 >
< ul class = "tsd-signatures tsd-kind-constructor tsd-parent-kind-class" >
< li class = "tsd-signature tsd-kind-icon" > new < wbr > Code< wbr > Action< span class = "tsd-signature-symbol" > (< / span > title< span class = "tsd-signature-symbol" > : < / span > < span class = "tsd-signature-type" > string< / span > , kind< span class = "tsd-signature-symbol" > ?: < / span > < a href = "CodeActionKind.html" class = "tsd-signature-type" data-tsd-kind = "Class" > CodeActionKind< / a > < span class = "tsd-signature-symbol" > )< / span > < span class = "tsd-signature-symbol" > : < / span > < a href = "CodeAction.html" class = "tsd-signature-type" data-tsd-kind = "Class" > CodeAction< / a > < / li >
< / ul >
< ul class = "tsd-descriptions" >
< li class = "tsd-description" >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2309" > vscode.d.ts:2309< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > Creates a new code action.< / p >
< / div >
< p > A code action must have at least a < a href = "CodeAction.html#title" > title< / a > and < a href = "CodeAction.html#edit" > edits< / a >
and/or a < a href = "CodeAction.html#command" > command< / a > .< / p >
< / div >
< h4 class = "tsd-parameters-title" > Parameters< / h4 >
< ul class = "tsd-parameters" >
< li >
< h5 > title: < span class = "tsd-signature-type" > string< / span > < / h5 >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > The title of the code action.< / p >
< / div >
< / div >
< / li >
< li >
< h5 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > kind: < a href = "CodeActionKind.html" class = "tsd-signature-type" data-tsd-kind = "Class" > CodeActionKind< / a > < / h5 >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > The kind of the code action.< / p >
< / div >
< / div >
< / li >
< / ul >
< h4 class = "tsd-returns-title" > Returns < a href = "CodeAction.html" class = "tsd-signature-type" data-tsd-kind = "Class" > CodeAction< / a > < / h4 >
< / li >
< / ul >
< / section >
< / section >
< section class = "tsd-panel-group tsd-member-group " >
< h2 > Properties< / h2 >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "title" class = "tsd-anchor" > < / a >
< h3 > title< / h3 >
< div class = "tsd-signature tsd-kind-icon" > title< span class = "tsd-signature-symbol" > :< / span > < span class = "tsd-signature-type" > string< / span > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2242" > vscode.d.ts:2242< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > A short, human-readable, title for this code action.< / p >
< / div >
< / div >
< / section >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "edit" class = "tsd-anchor" > < / a >
< h3 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > edit< / h3 >
< div class = "tsd-signature tsd-kind-icon" > edit< span class = "tsd-signature-symbol" > :< / span > < a href = "WorkspaceEdit.html" class = "tsd-signature-type" data-tsd-kind = "Class" > WorkspaceEdit< / a > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2247" > vscode.d.ts:2247< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > A < a href = "WorkspaceEdit.html" > workspace edit< / a > this code action performs.< / p >
< / div >
< / div >
< / section >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "diagnostics" class = "tsd-anchor" > < / a >
< h3 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > diagnostics< / h3 >
< div class = "tsd-signature tsd-kind-icon" > diagnostics< span class = "tsd-signature-symbol" > :< / span > < a href = "Diagnostic.html" class = "tsd-signature-type" data-tsd-kind = "Class" > Diagnostic< / a > < span class = "tsd-signature-symbol" > []< / span > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2252" > vscode.d.ts:2252< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > < a href = "Diagnostic.html" > Diagnostics< / a > that this code action resolves.< / p >
< / div >
< / div >
< / section >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "command" class = "tsd-anchor" > < / a >
< h3 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > command< / h3 >
< div class = "tsd-signature tsd-kind-icon" > command< span class = "tsd-signature-symbol" > :< / span > < a href = "../interfaces/Command.html" class = "tsd-signature-type" data-tsd-kind = "Interface" > Command< / a > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2260" > vscode.d.ts:2260< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > A < a href = "../interfaces/Command.html" > Command< / a > this code action executes.< / p >
< / div >
< p > If this command throws an exception, the editor displays the exception message to users in the editor at the
current cursor position.< / p >
< / div >
< / section >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "kind" class = "tsd-anchor" > < / a >
< h3 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > kind< / h3 >
< div class = "tsd-signature tsd-kind-icon" > kind< span class = "tsd-signature-symbol" > :< / span > < a href = "CodeActionKind.html" class = "tsd-signature-type" data-tsd-kind = "Class" > CodeActionKind< / a > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2267" > vscode.d.ts:2267< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > < a href = "CodeActionKind.html" > Kind< / a > of the code action.< / p >
< / div >
< p > Used to filter code actions.< / p >
< / div >
< / section >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "isPreferred" class = "tsd-anchor" > < / a >
< h3 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > is< wbr > Preferred< / h3 >
< div class = "tsd-signature tsd-kind-icon" > is< wbr > Preferred< span class = "tsd-signature-symbol" > :< / span > < span class = "tsd-signature-type" > boolean< / span > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2276" > vscode.d.ts:2276< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > Marks this as a preferred action. Preferred actions are used by the < code > auto fix< / code > command and can be targeted
by keybindings.< / p >
< / div >
< p > 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.< / p >
< / div >
< / section >
< section class = "tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class" >
< a name = "disabled" class = "tsd-anchor" > < / a >
< h3 > < span class = "tsd-flag ts-flagOptional" > Optional< / span > disabled< / h3 >
< div class = "tsd-signature tsd-kind-icon" > disabled< span class = "tsd-signature-symbol" > :< / span > < span class = "tsd-signature-symbol" > { < / span > reason< span class = "tsd-signature-symbol" > : < / span > < span class = "tsd-signature-type" > string< / span > < span class = "tsd-signature-symbol" > }< / span > < / div >
< aside class = "tsd-sources" >
< ul >
< li > Defined in < a href = "https://github.com/youngjuning/vscode-api/blob/2dd8438/vscode.d.ts#L2291" > vscode.d.ts:2291< / a > < / li >
< / ul >
< / aside >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > Marks that the code action cannot currently be applied.< / p >
< / div >
< ul >
< li > < p > Disabled code actions are not shown in automatic < a href = "https://code.visualstudio.com/docs/editor/editingevolved#_code-action" > lightbulb< / a >
code action menu.< / p >
< / li >
< li > < p > 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.< / p >
< / li >
< li > < p > If the user has a < a href = "https://code.visualstudio.com/docs/editor/refactoring#_keybindings-for-code-actions" > keybinding< / a >
that auto applies a code action and only a disabled code actions are returned, the editor will show the user an
error message with < code > reason< / code > in the editor.< / p >
< / li >
< / ul >
< / div >
< div class = "tsd-type-declaration" >
< h4 > Type declaration< / h4 >
< ul class = "tsd-parameters" >
< li class = "tsd-parameter" >
< h5 > < span class = "tsd-flag ts-flagReadonly" > Readonly< / span > reason< span class = "tsd-signature-symbol" > : < / span > < span class = "tsd-signature-type" > string< / span > < / h5 >
< div class = "tsd-comment tsd-typography" >
< div class = "lead" >
< p > Human readable description of why the code action is currently disabled.< / p >
< / div >
< p > This is displayed in the code actions UI.< / p >
< / div >
< / li >
< / ul >
< / div >
< / section >
< / section >
< / div >
< div class = "col-4 col-menu menu-sticky-wrap menu-highlight" >
< nav class = "tsd-navigation primary" >
< ul >
< li class = " " >
< a href = "../modules.html" > Exports< / a >
< / li >
< / ul >
< / nav >
< nav class = "tsd-navigation secondary menu-sticky" >
< ul class = "before-current" >
< / ul >
< ul class = "current" >
< li class = "current tsd-kind-class" >
< a href = "CodeAction.html" class = "tsd-kind-icon" > Code< wbr > Action< / a >
< ul >
< li class = " tsd-kind-constructor tsd-parent-kind-class" >
< a href = "CodeAction.html#constructor" class = "tsd-kind-icon" > constructor< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#title" class = "tsd-kind-icon" > title< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#edit" class = "tsd-kind-icon" > edit< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#diagnostics" class = "tsd-kind-icon" > diagnostics< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#command" class = "tsd-kind-icon" > command< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#kind" class = "tsd-kind-icon" > kind< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#isPreferred" class = "tsd-kind-icon" > is< wbr > Preferred< / a >
< / li >
< li class = " tsd-kind-property tsd-parent-kind-class" >
< a href = "CodeAction.html#disabled" class = "tsd-kind-icon" > disabled< / a >
< / li >
< / ul >
< / li >
< / ul >
< ul class = "after-current" >
< / ul >
< / nav >
< / div >
< / div >
< / div >
< footer class = "with-border-bottom" >
< div class = "container" >
< h2 > Legend< / h2 >
< div class = "tsd-legend-group" >
< ul class = "tsd-legend" >
< li class = "tsd-kind-constructor tsd-parent-kind-class" > < span class = "tsd-kind-icon" > Constructor< / span > < / li >
< li class = "tsd-kind-property tsd-parent-kind-class" > < span class = "tsd-kind-icon" > Property< / span > < / li >
< li class = "tsd-kind-method tsd-parent-kind-class" > < span class = "tsd-kind-icon" > Method< / span > < / li >
< / ul >
< ul class = "tsd-legend" >
< li class = "tsd-kind-property tsd-parent-kind-interface" > < span class = "tsd-kind-icon" > Property< / span > < / li >
< li class = "tsd-kind-method tsd-parent-kind-interface" > < span class = "tsd-kind-icon" > Method< / span > < / li >
< / ul >
< ul class = "tsd-legend" >
< li class = "tsd-kind-property tsd-parent-kind-class tsd-is-inherited" > < span class = "tsd-kind-icon" > Inherited property< / span > < / li >
< li class = "tsd-kind-method tsd-parent-kind-class tsd-is-inherited" > < span class = "tsd-kind-icon" > Inherited method< / span > < / li >
< / ul >
< ul class = "tsd-legend" >
< li class = "tsd-kind-property tsd-parent-kind-class tsd-is-static" > < span class = "tsd-kind-icon" > Static property< / span > < / li >
< li class = "tsd-kind-method tsd-parent-kind-class tsd-is-static" > < span class = "tsd-kind-icon" > Static method< / span > < / li >
< / ul >
< / div >
< / div >
< / footer >
< div class = "container tsd-generator" >
< p > Generated using < a href = "https://typedoc.org/" target = "_blank" > TypeDoc< / a > < / p >
< / div >
< div class = "overlay" > < / div >
< script src = "../assets/js/main.js" > < / script >
< / body >
< / html >