use ::thiserror::Error;
use super::ack::AckError;
use super::broker::BrokerError;
#[derive(Error, Debug)]
pub enum SubError {
#[error("Broker error: {0}")]
BrokerError(#[from] BrokerError),
#[error("Acknowledgment error: {0}")]
AckError(#[from] AckError),
#[error("JSON error: {0}")]
Json(#[from] serde_json::Error),
#[error("MessagePack decode error: {0}")]
MessagePackDecode(#[from] rmp_serde::decode::Error),
#[cfg(test)]
#[error("Error Test")]
ErrorTest,
}