pub trait CodeActionProvider {
// Required methods
fn id(&self) -> SharedString;
fn code_actions(
&self,
state: Entity<InputBaseState<EditorMode>>,
range: Range<usize>,
window: &mut Window,
cx: &mut App,
) -> Task<Result<Vec<CodeAction>, Error>> ⓘ;
fn perform_code_action(
&self,
state: Entity<InputBaseState<EditorMode>>,
action: CodeAction,
push_to_history: bool,
window: &mut Window,
cx: &mut App,
) -> Task<Result<(), Error>> ⓘ;
}Required Methods§
Sourcefn id(&self) -> SharedString
fn id(&self) -> SharedString
The id for this CodeAction.
Sourcefn code_actions(
&self,
state: Entity<InputBaseState<EditorMode>>,
range: Range<usize>,
window: &mut Window,
cx: &mut App,
) -> Task<Result<Vec<CodeAction>, Error>> ⓘ
fn code_actions( &self, state: Entity<InputBaseState<EditorMode>>, range: Range<usize>, window: &mut Window, cx: &mut App, ) -> Task<Result<Vec<CodeAction>, Error>> ⓘ
Fetches code actions for the specified range.
textDocument/codeAction
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_codeAction
Sourcefn perform_code_action(
&self,
state: Entity<InputBaseState<EditorMode>>,
action: CodeAction,
push_to_history: bool,
window: &mut Window,
cx: &mut App,
) -> Task<Result<(), Error>> ⓘ
fn perform_code_action( &self, state: Entity<InputBaseState<EditorMode>>, action: CodeAction, push_to_history: bool, window: &mut Window, cx: &mut App, ) -> Task<Result<(), Error>> ⓘ
Performs the specified code action.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".