use std::fmt;
#[derive(Debug, Clone)]
pub enum Error {
RouteError(String),
ServerError(String),
AddressError(String),
BindError(String),
OpenApiError(String),
Internal(String),
}
impl fmt::Display for Error {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
Error::RouteError(msg) => write!(f, "Route error: {msg}"),
Error::ServerError(msg) => write!(f, "Server error: {msg}"),
Error::AddressError(msg) => write!(f, "Address error: {msg}"),
Error::BindError(msg) => write!(f, "Bind error: {msg}"),
Error::OpenApiError(msg) => write!(f, "OpenAPI error: {msg}"),
Error::Internal(msg) => write!(f, "Internal error: {msg}"),
}
}
}
impl std::error::Error for Error {}
pub type Result<T> = std::result::Result<T, Error>;