Skip to main content

ggen_cli_lib/config_clap/
error.rs

1//! Error types for config-clap integration
2
3use thiserror::Error;
4
5#[derive(Error, Debug)]
6pub enum ConfigClapError {
7    #[error("Failed to load ggen.toml: {0}")]
8    LoadError(String),
9
10    #[error("Failed to parse configuration: {0}")]
11    ParseError(String),
12
13    #[error("Type conversion error: {field} - {reason}")]
14    TypeConversion { field: String, reason: String },
15
16    #[error("Missing required field: {0}")]
17    MissingField(String),
18
19    #[error("Configuration error: {0}")]
20    Config(#[from] anyhow::Error),
21}
22
23pub type Result<T> = std::result::Result<T, ConfigClapError>;