worterbuch 1.4.2

A message broker / database hybrid.
Documentation
use std::io;

use crate::persistence::error::PersistenceError;
use miette::Diagnostic;
use tokio::sync::oneshot;
use worterbuch_common::error::WorterbuchError;

#[derive(Debug, Diagnostic, thiserror::Error)]
pub enum WorterbuchAppError {
    #[error("Persistence error: {0}")]
    PersistenceError(#[from] PersistenceError),
    #[error("Worterbuch error: {0}")]
    WorterbuchError(#[from] WorterbuchError),
    #[error("Config error: {0}")]
    ConfigError(String),
    #[error("Cluster error: {0}")]
    ClusterError(String),
    #[error("I/O error: {0}")]
    IoError(#[from] io::Error),
    #[error("Channel error: {0}")]
    ChannelError(#[from] oneshot::error::RecvError),
}

pub type WorterbuchAppResult<T> = Result<T, WorterbuchAppError>;