diff options
author | Paul Woolcock <paul@woolcock.us> | 2018-10-10 05:48:11 -0400 |
---|---|---|
committer | Paul Woolcock <paul@woolcock.us> | 2018-10-10 10:28:10 -0400 |
commit | d524a64bfd65d789b0dd54434a848fccba505471 (patch) | |
tree | b7bb508321be15b837fb9e8ef98ab8ee6b20f440 | |
parent | eb973a63c9bcef531bb30f16132b02fa9077f627 (diff) |
Fix the error used here
The `MastodonBuilder` is going to be changed to be `pub` soon, so let's
fix this redundant error variant now
-rw-r--r-- | src/errors.rs | 19 | ||||
-rw-r--r-- | src/lib.rs | 2 |
2 files changed, 16 insertions, 5 deletions
diff --git a/src/errors.rs b/src/errors.rs index 2c466ef..c836fae 100644 --- a/src/errors.rs +++ b/src/errors.rs @@ -40,9 +40,7 @@ pub enum Error { Client(StatusCode), /// Generic server error. Server(StatusCode), - /// MastodonBuilder error. - DataMissing, - /// AppBuilder error + /// MastodonBuilder & AppBuilder error MissingField(&'static str), #[cfg(feature = "toml")] /// Error serializing to toml @@ -54,6 +52,8 @@ pub enum Error { HeaderStrError(HeaderStrError), /// Error parsing the http Link header HeaderParseError(HeaderParseError), + /// Other errors + Other(String), } impl fmt::Display for Error { @@ -82,7 +82,6 @@ impl error::Error for Error { Error::ClientIdRequired => "ClientIdRequired", Error::ClientSecretRequired => "ClientSecretRequired", Error::AccessTokenRequired => "AccessTokenRequired", - Error::DataMissing => "DataMissing", Error::MissingField(_) => "MissingField", #[cfg(feature = "toml")] Error::TomlSer(ref e) => e.description(), @@ -90,6 +89,7 @@ impl error::Error for Error { Error::TomlDe(ref e) => e.description(), Error::HeaderStrError(ref e) => e.description(), Error::HeaderParseError(ref e) => e.description(), + Error::Other(ref e) => e, } } } @@ -128,6 +128,17 @@ from! { #[cfg(feature = "toml")] TomlDeError, TomlDe, HeaderStrError, HeaderStrError, HeaderParseError, HeaderParseError, + String, Other, +} + +#[macro_export] +macro_rules! format_err { + ( $( $arg:tt )* ) => { + { + use elefren::Error; + Error::Other(format!($($arg)*)) + } + } } #[cfg(test)] @@ -450,7 +450,7 @@ impl<H: HttpSend> MastodonBuilder<H> { data, } } else { - return Err(Error::DataMissing); + return Err(Error::MissingField("missing field 'data'")); }) } } |