use std::error::Error; use std::fmt::{ self, Display, Formatter }; /// Result Boxed Error pub type ResBE = Result>; #[allow(unused)] #[derive(Clone, Debug)] pub enum DlError { BadHttpStatus, ContentLengthUnknown, Other(String) } impl Error for DlError {} impl Display for DlError { fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { match self { DlError::BadHttpStatus => write!(f, "Bad http response status"), DlError::ContentLengthUnknown => write!(f, "Content-Length is unknown"), DlError::Other(s) => write!(f, "Unknown download error: '{}'", s) } } }