diff options
Diffstat (limited to 'dhall/src/error.rs')
-rw-r--r-- | dhall/src/error.rs | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/dhall/src/error.rs b/dhall/src/error.rs deleted file mode 100644 index 6ed0bfb..0000000 --- a/dhall/src/error.rs +++ /dev/null @@ -1,52 +0,0 @@ -pub type Result<T> = std::result::Result<T, Error>; - -#[derive(Debug)] -#[non_exhaustive] -pub enum Error { - IO(std::io::Error), - Parse(dhall_syntax::ParseError), - Decode(crate::binary::DecodeError), - Resolve(crate::imports::ImportError), - Typecheck(crate::typecheck::TypeError), - Deserialize(String), -} - -impl std::fmt::Display for Error { - fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { - match self { - Error::IO(err) => write!(f, "{}", err), - Error::Parse(err) => write!(f, "{}", err), - Error::Decode(err) => write!(f, "{:?}", err), - Error::Resolve(err) => write!(f, "{:?}", err), - Error::Typecheck(err) => write!(f, "{:?}", err), - Error::Deserialize(err) => write!(f, "{}", err), - } - } -} - -impl std::error::Error for Error {} -impl From<std::io::Error> for Error { - fn from(err: std::io::Error) -> Error { - Error::IO(err) - } -} -impl From<dhall_syntax::ParseError> for Error { - fn from(err: dhall_syntax::ParseError) -> Error { - Error::Parse(err) - } -} -impl From<crate::binary::DecodeError> for Error { - fn from(err: crate::binary::DecodeError) -> Error { - Error::Decode(err) - } -} -impl From<crate::imports::ImportError> for Error { - fn from(err: crate::imports::ImportError) -> Error { - Error::Resolve(err) - } -} -impl From<crate::typecheck::TypeError> for Error { - fn from(err: crate::typecheck::TypeError) -> Error { - Error::Typecheck(err) - } -} |