diff options
author | Maxime “pep” Buquet <pep@bouah.net> | 2022-08-21 22:53:40 +0200 |
---|---|---|
committer | Maxime “pep” Buquet <pep@bouah.net> | 2022-08-23 11:44:11 +0200 |
commit | 10cc67e6c78ca37508ba30cba42baa68c8fff5a3 (patch) | |
tree | 35a040ed084f389937675218341ff7d2319315d4 /src/error.rs | |
parent | c68b00ae248476751935499dbe5fb151e2919569 (diff) | |
download | poezio-10cc67e6c78ca37508ba30cba42baa68c8fff5a3.tar.gz poezio-10cc67e6c78ca37508ba30cba42baa68c8fff5a3.tar.bz2 poezio-10cc67e6c78ca37508ba30cba42baa68c8fff5a3.tar.xz poezio-10cc67e6c78ca37508ba30cba42baa68c8fff5a3.zip |
roezio: migrate poezio/args.py
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
Diffstat (limited to 'src/error.rs')
-rw-r--r-- | src/error.rs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/error.rs b/src/error.rs new file mode 100644 index 00000000..c1a0cb88 --- /dev/null +++ b/src/error.rs @@ -0,0 +1,41 @@ +// Copyright (C) 2022 Maxime “pep” Buquet <pep@bouah.net> +// +// This program is free software: you can redistribute it and/or modify it +// under the terms of the GNU Affero General Public License as published by the +// Free Software Foundation, either version 3 of the License, or (at your +// option) any later version. +// +// This program is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License +// for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see <https://www.gnu.org/licenses/>. + +use std::error::Error as StdError; +use std::fmt; +use std::io; + +#[derive(Debug)] +pub(crate) enum Error { + IOError(io::Error), + UnableToCreateConfigDir, +} + +impl fmt::Display for Error { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + Error::IOError(e) => write!(f, "io error: {}", e), + Error::UnableToCreateConfigDir => write!(f, "Unable to create config dir"), + } + } +} + +impl StdError for Error {} + +impl From<io::Error> for Error { + fn from(err: io::Error) -> Error { + Error::IOError(err) + } +} |