Skip to main content

pidge_core/
error.rs

1//! Error type for `pidge-core`.
2
3use thiserror::Error;
4
5#[derive(Debug, Error)]
6pub enum CoreError {
7    #[error("config I/O: {0}")]
8    Io(#[from] std::io::Error),
9
10    #[error("config parse: {0}")]
11    Parse(#[from] serde_norway::Error),
12
13    #[error("unknown account: {email}")]
14    UnknownAccount { email: String },
15
16    #[error("config directory unavailable on this platform")]
17    NoConfigDir,
18
19    #[error("unknown config key '{key}'")]
20    UnknownConfigKey { key: String },
21
22    #[error("invalid value '{value}' for config key '{key}'")]
23    InvalidConfigValue { key: String, value: String },
24}