Skip to main content

Crate lspkit_server

Crate lspkit_server 

Source
Expand description

lspkit-server — hand-rolled JSON-RPC LSP server scaffolding.

Provides the primitives every Rust LSP server reimplements:

All routing happens against an lspkit::EngineApi + lspkit_vfs::Vfs pair the consumer supplies.

Re-exports§

pub use crate::capabilities::Capabilities;
pub use crate::capabilities::Feature;
pub use crate::capabilities::TextSync;
pub use crate::diagnostics::Diagnostic;
pub use crate::diagnostics::DiagnosticsBatch;
pub use crate::diagnostics::DiagnosticsBus;
pub use crate::diagnostics::DiagnosticsSink;
pub use crate::diagnostics::Severity;
pub use crate::dispatch::DispatchError;
pub use crate::dispatch::Dispatcher;
pub use crate::dispatch::HandlerResult;
pub use crate::jsonrpc::FramingError;
pub use crate::jsonrpc::JsonRpcError;
pub use crate::jsonrpc::Message;
pub use crate::jsonrpc::MessageWriter;
pub use crate::jsonrpc::RequestId;
pub use crate::progress::NoopReporter;
pub use crate::progress::ProgressReporter;
pub use crate::progress::ProgressSink;
pub use crate::progress::ProgressUpdate;
pub use crate::uri::path_to_uri;
pub use crate::uri::uri_to_path;
pub use crate::uri::UriError;
pub use crate::workspace::Workspace;
pub use crate::workspace::WorkspaceFolder;

Modules§

capabilities
Server-capability builder.
diagnostics
Diagnostics fan-out bus.
dispatch
JSON-RPC method dispatcher.
jsonrpc
Content-Length-framed JSON-RPC 2.0 over async I/O.
progress
Work-done progress sink.
uri
URI ↔ PathBuf conversion.
workspace
Multi-root workspace abstraction.