use getrandom::Error as GetrandomError; use srp::types::SrpAuthError; #[derive(Debug)] pub enum Error { SrpError(SrpAuthError), RngError(GetrandomError) } impl std::fmt::Display for Error { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { Error::SrpError(err) => { return f.write_str(format!("{}", err).as_str()); }, Error::RngError(err) => { return f.write_str(format!("{}", err).as_str()); }, }; } } impl std::error::Error for Error { } impl From for Error { fn from(value: GetrandomError) -> Self { return Error::RngError(value); } } impl From for Error { fn from(value: SrpAuthError) -> Self { return Error::SrpError(value); } } pub type Result = std::result::Result;