#[derive(Clone, Debug, PartialEq, Eq)]
pub enum NetError {
MalformedUrl(String),
UnsupportedScheme(String),
InvalidPort(String),
InvalidHead(String),
OversizeBody(usize),
}
impl core::fmt::Display for NetError {
fn fmt(&self, formatter: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
match self {
Self::MalformedUrl(url) => write!(formatter, "malformed url {url}"),
Self::UnsupportedScheme(scheme) => write!(formatter, "unsupported url scheme {scheme}"),
Self::InvalidPort(url) => write!(formatter, "invalid port in url {url}"),
Self::InvalidHead(detail) => write!(formatter, "invalid http head: {detail}"),
Self::OversizeBody(limit) => {
write!(formatter, "payload exceeded size limit of {limit} bytes")
}
}
}
}
impl core::error::Error for NetError {}