use std::fmt;
#[derive(Debug)]
pub enum Error {
InvalidData,
MoreDataNeeded,
ConfigurationIncomplete,
ConfigurationInvalid,
Unsupported(String),
}
impl std::error::Error for Error {}
impl fmt::Display for Error {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
match self {
Error::InvalidData => write!(f, "Invalid Data"),
Error::MoreDataNeeded => write!(f, "Additional data needed"),
Error::ConfigurationIncomplete => write!(f, "Configuration Incomplete"),
Error::ConfigurationInvalid => write!(f, "Configuration Invalid"),
Error::Unsupported(feat) => write!(f, "Unsupported feature {feat}"),
}
}
}
pub type Result<T> = ::std::result::Result<T, Error>;