aboutsummaryrefslogtreecommitdiffstats
path: root/src/error.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/error.rs')
-rw-r--r--src/error.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/error.rs b/src/error.rs
index ed17362..b0ab95d 100644
--- a/src/error.rs
+++ b/src/error.rs
@@ -27,6 +27,26 @@ pub enum Error {
JsonError(serde_json::error::Error),
}
+impl std::fmt::Display for Error {
+ fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
+ match self {
+ Error::InvalidHeaderValue(e) => e.fmt(f),
+ Error::ReqwestError(e) => e.fmt(f),
+ Error::JsonError(e) => e.fmt(f),
+ }
+ }
+}
+
+impl std::error::Error for Error {
+ fn cause(&self) -> Option<&std::error::Error> {
+ match self {
+ Error::InvalidHeaderValue(e) => Some(e),
+ Error::ReqwestError(e) => Some(e),
+ Error::JsonError(e) => Some(e),
+ }
+ }
+}
+
impl From<reqwest::header::InvalidHeaderValue> for Error {
fn from(err: reqwest::header::InvalidHeaderValue) -> Error {
Error::InvalidHeaderValue(err)