aether-lspd 0.1.14

LSP daemon for sharing language servers across multiple agents
Documentation
use std::io;
use thiserror::Error;

#[doc = include_str!("docs/daemon_error.md")]
#[derive(Debug, Error)]
pub enum DaemonError {
    /// IO error
    #[error("IO error: {0}")]
    Io(#[from] io::Error),

    /// Failed to bind to socket
    #[error("Failed to bind to socket: {0}")]
    BindFailed(#[source] io::Error),

    /// Failed to spawn LSP process
    #[error("Failed to spawn LSP: {0}")]
    LspSpawnFailed(String),

    /// Lockfile error
    #[error("Lockfile error: {0}")]
    LockfileError(String),
}

/// Result type for daemon operations
pub type DaemonResult<T> = std::result::Result<T, DaemonError>;