diff options
Diffstat (limited to 'zone_zfs/src/error.rs')
-rw-r--r-- | zone_zfs/src/error.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/zone_zfs/src/error.rs b/zone_zfs/src/error.rs new file mode 100644 index 0000000..0275384 --- /dev/null +++ b/zone_zfs/src/error.rs @@ -0,0 +1,20 @@ +pub type Result<T> = std::result::Result<T, Error>; + +#[allow(clippy::large_enum_variant)] +#[derive(thiserror::Error, Debug)] +pub enum Error { + #[error("ZFS error")] + ZFS(String), + + #[error("Snapshot Error: {0:?}")] + Snapshot(String), + + #[error("File System Error: {0:?}")] + FileSystem(String), + + #[error("IO Error: Failed to run command")] + IO(#[from] std::io::Error), + + #[error("Config Error: {0:?}")] + Config(#[from] figment::Error), +} |