headless-talk 0.6.1

Headless talk implementation
Documentation
use std::io;

use talk_loco_client::RequestError;
use thiserror::Error;

use crate::{database::PoolTaskError, ClientError};

#[derive(Debug, Error)]
#[error(transparent)]
pub enum HandlerError {
    Client(#[from] ClientError),

    Deserialize(#[from] bson::de::Error),

    Io(#[from] io::Error),
}

impl From<PoolTaskError> for HandlerError {
    fn from(value: PoolTaskError) -> Self {
        Self::Client(ClientError::Database(value))
    }
}

impl From<RequestError> for HandlerError {
    fn from(value: RequestError) -> Self {
        Self::Client(ClientError::Request(value))
    }
}