configloader_676/config/
error.rs1use std::fmt;
2
3#[derive(Debug)]
4pub enum ConfigError {
5 FileNotFound,
6 ParseError(String),
7 MissingField(String),
8 EnvVarError(String),
9 ValidationError(String),
10}
11
12impl fmt::Display for ConfigError {
13 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
14 match self {
15 ConfigError::FileNotFound => write!(f, "Configuration file not found"),
16 ConfigError::ParseError(msg) => write!(f, "Parse error: {}", msg),
17 ConfigError::MissingField(field) => write!(f, "Missing required field: {}", field),
18 ConfigError::EnvVarError(msg) => write!(f, "Environment variable error: {}", msg),
19 ConfigError::ValidationError(msg) => write!(f, "Validation error: {}", msg),
20 }
21 }
22}
23
24impl std::error::Error for ConfigError {}