Crate reovim_plugin_lsp

Crate reovim_plugin_lsp 

Source
Expand description

LSP integration plugin for reovim.

This plugin provides Language Server Protocol support:

  • Document synchronization (didOpen, didChange, didClose)
  • Diagnostics display (errors, warnings)

§Architecture

The plugin uses the saturator pattern for non-blocking LSP I/O:

  • LspSaturator runs in a background tokio task
  • DiagnosticCache uses ArcSwap for lock-free reads
  • Event handlers schedule syncs with debouncing
  • LspRenderStage sends content to the saturator when debounce elapsed

Modules§

command_id
Command IDs for LSP commands

Structs§

DocumentManager
Manages document state for all open buffers.
DocumentState
State for a single document being synchronized with the LSP server.
LspGotoDefinition
Event emitted when user triggers goto definition
LspGotoDefinitionCommand
Command: Go to definition of symbol under cursor
LspGotoReferences
Event emitted when user triggers goto references
LspGotoReferencesCommand
Command: Find all references to symbol under cursor
LspHoverDismiss
Event emitted to dismiss hover popup
LspLogOpen
Event emitted to open the LSP log file
LspManager
LSP manager state.
LspPlugin
LSP integration plugin.
LspRenderStage
LSP render stage - handles document synchronization.
LspShowHover
Event emitted when user triggers hover
LspShowHoverCommand
Command: Show hover documentation for symbol under cursor
SharedLspManager
Thread-safe wrapper for LSP state.