pub enum AsyncMessage {
Show 40 variants
LspDiagnostics {
uri: String,
diagnostics: Vec<Diagnostic>,
server_name: String,
},
LspInitialized {
language: String,
server_name: String,
capabilities: ServerCapabilitySummary,
},
LspError {
language: String,
error: String,
stderr_log_path: Option<PathBuf>,
},
LspCompletion {
request_id: u64,
items: Vec<CompletionItem>,
},
LspGotoDefinition {
request_id: u64,
locations: Vec<Location>,
},
LspRename {
request_id: u64,
result: Result<WorkspaceEdit, String>,
},
LspHover {
request_id: u64,
contents: String,
is_markdown: bool,
range: Option<((u32, u32), (u32, u32))>,
},
LspReferences {
request_id: u64,
locations: Vec<Location>,
},
LspSignatureHelp {
request_id: u64,
signature_help: Option<SignatureHelp>,
},
LspCodeActions {
request_id: u64,
actions: Vec<CodeActionOrCommand>,
},
LspCompletionResolved {
request_id: u64,
item: Result<CompletionItem, String>,
},
LspFormatting {
request_id: u64,
uri: String,
edits: Vec<TextEdit>,
},
LspPrepareRename {
request_id: u64,
result: Result<Value, String>,
},
LspPulledDiagnostics {
request_id: u64,
uri: String,
result_id: Option<String>,
diagnostics: Vec<Diagnostic>,
unchanged: bool,
},
LspInlayHints {
request_id: u64,
uri: String,
hints: Vec<InlayHint>,
},
LspFoldingRanges {
request_id: u64,
uri: String,
ranges: Vec<FoldingRange>,
},
LspSemanticTokens {
request_id: u64,
uri: String,
response: LspSemanticTokensResponse,
},
LspServerQuiescent {
language: String,
},
LspDiagnosticRefresh {
language: String,
},
FileChanged {
path: String,
},
GitStatusChanged {
status: String,
},
FileExplorerInitialized(FileTreeView),
FileExplorerToggleNode(NodeId),
FileExplorerRefreshNode(NodeId),
FileExplorerExpandedToPath(FileTreeView),
Plugin(PluginAsyncMessage),
FileOpenDirectoryLoaded(Result<Vec<DirEntry>>),
FileOpenShortcutsLoaded(Vec<NavigationShortcut>),
TerminalOutput {
terminal_id: TerminalId,
},
TerminalExited {
terminal_id: TerminalId,
},
LspProgress {
language: String,
token: String,
value: LspProgressValue,
},
LspWindowMessage {
language: String,
message_type: LspMessageType,
message: String,
},
LspLogMessage {
language: String,
message_type: LspMessageType,
message: String,
},
LspApplyEdit {
edit: WorkspaceEdit,
label: Option<String>,
},
LspCodeActionResolved {
request_id: u64,
action: Result<CodeAction, String>,
},
LspServerRequest {
language: String,
server_command: String,
method: String,
params: Option<Value>,
},
PluginLspResponse {
language: String,
request_id: u64,
result: Result<Value, String>,
},
PluginProcessOutput {
process_id: u64,
stdout: String,
stderr: String,
exit_code: i32,
},
LspStatusUpdate {
language: String,
server_name: String,
status: LspServerStatus,
message: Option<String>,
},
GrammarRegistryBuilt {
registry: Arc<GrammarRegistry>,
callback_ids: Vec<JsCallbackId>,
},
}Expand description
Messages sent from async tasks to the synchronous main loop
Variants§
LspDiagnostics
LSP diagnostics received for a file
Fields
diagnostics: Vec<Diagnostic>LspInitialized
LSP server initialized successfully
Fields
capabilities: ServerCapabilitySummaryCapabilities reported by this server
LspError
LSP server crashed or failed
Fields
LspCompletion
LSP completion response
LspGotoDefinition
LSP go-to-definition response
LspRename
LSP rename response
LspHover
LSP hover response
Fields
LspReferences
LSP find references response
LspSignatureHelp
LSP signature help response
LspCodeActions
LSP code actions response
LspCompletionResolved
LSP completionItem/resolve response
LspFormatting
LSP textDocument/formatting response
LspPrepareRename
LSP textDocument/prepareRename response
LspPulledDiagnostics
LSP pulled diagnostics response (textDocument/diagnostic)
Fields
diagnostics: Vec<Diagnostic>Diagnostics (empty if unchanged)
LspInlayHints
LSP inlay hints response (textDocument/inlayHint)
LspFoldingRanges
LSP folding ranges response (textDocument/foldingRange)
LspSemanticTokens
LSP semantic tokens response (full, full/delta, or range)
LspServerQuiescent
LSP server status became quiescent (project fully loaded) This is a rust-analyzer specific notification (experimental/serverStatus)
LspDiagnosticRefresh
LSP server requests diagnostic refresh (workspace/diagnostic/refresh) Client should re-pull diagnostics for all open documents
FileChanged
File changed externally (future: file watching)
GitStatusChanged
Git status updated (future: git integration)
FileExplorerInitialized(FileTreeView)
File explorer initialized with tree view
FileExplorerToggleNode(NodeId)
File explorer node toggle completed
FileExplorerRefreshNode(NodeId)
File explorer node refresh completed
FileExplorerExpandedToPath(FileTreeView)
File explorer expand to path completed Contains the updated FileTreeView with the path expanded and selected
Plugin(PluginAsyncMessage)
Plugin-related async messages
FileOpenDirectoryLoaded(Result<Vec<DirEntry>>)
File open dialog: directory listing completed
FileOpenShortcutsLoaded(Vec<NavigationShortcut>)
File open dialog: async shortcuts (Windows drive letters) loaded
TerminalOutput
Terminal output received (triggers redraw)
Fields
terminal_id: TerminalIdTerminalExited
Terminal process exited
Fields
terminal_id: TerminalIdLspProgress
LSP progress notification ($/progress)
LspWindowMessage
LSP window message (window/showMessage)
LspLogMessage
LSP log message (window/logMessage)
LspApplyEdit
LSP workspace/applyEdit (server -> client request) Server asks client to apply a workspace edit (during executeCommand, etc.)
LspCodeActionResolved
LSP codeAction/resolve response
LspServerRequest
LSP server request (server -> client) Used for custom/extension methods that plugins can handle
PluginLspResponse
Response for a plugin-initiated LSP request
PluginProcessOutput
Plugin process completed with output
Fields
LspStatusUpdate
LSP server status update (progress, messages, etc.)
Fields
status: LspServerStatusGrammarRegistryBuilt
Background grammar build completed — swap in the new registry.
callback_ids contains plugin callbacks to resolve (empty for the
initial startup build).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AsyncMessage
impl !RefUnwindSafe for AsyncMessage
impl Send for AsyncMessage
impl Sync for AsyncMessage
impl Unpin for AsyncMessage
impl UnsafeUnpin for AsyncMessage
impl !UnwindSafe for AsyncMessage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more