diff options
Diffstat (limited to 'src/error.rs')
-rw-r--r-- | src/error.rs | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/error.rs b/src/error.rs index 943c3ec..ef0ef1d 100644 --- a/src/error.rs +++ b/src/error.rs @@ -1,6 +1,9 @@ use bincode::Error as bincode_e; +use hyper::Error as hyper_e; use sled::Error as sled_e; use std::fmt; +use std::net::AddrParseError; +use std::num::ParseIntError; #[derive(Debug)] pub struct TwinHError(pub String); @@ -9,7 +12,7 @@ impl std::error::Error for TwinHError {} impl std::fmt::Display for TwinHError { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> Result<(), fmt::Error> { - write!(f, "Twin H-Power: {}", self.0) + write!(f, "twinh: {}", self.0) } } @@ -24,3 +27,21 @@ impl From<bincode_e> for TwinHError { Self(format!("(de)serialization error: {}", e)) } } + +impl From<AddrParseError> for TwinHError { + fn from(e: AddrParseError) -> Self { + Self(format!("failed to parse addr: {}", e)) + } +} + +impl From<ParseIntError> for TwinHError { + fn from(e: ParseIntError) -> Self { + Self(format!("failed to parse port: {}", e)) + } +} + +impl From<hyper_e> for TwinHError { + fn from(e: hyper_e) -> Self { + Self(format!("server error: {}", e)) + } +} |