Skip to main content

mermaid_cli/utils/
errors.rs

1use thiserror::Error;
2
3/// Main error type for Mermaid
4#[derive(Error, Debug)]
5pub enum MermaidError {
6    #[error("Model error: {0}")]
7    ModelError(String),
8
9    #[error("Configuration error: {0}")]
10    ConfigError(String),
11
12    #[error("IO error: {0}")]
13    IoError(#[from] std::io::Error),
14
15    #[error("Git error: {0}")]
16    GitError(#[from] git2::Error),
17
18    #[error("Context loading error: {0}")]
19    ContextError(String),
20
21    #[error("Agent execution error: {0}")]
22    AgentError(String),
23
24    #[error("UI error: {0}")]
25    UIError(String),
26
27    #[error("Network error: {0}")]
28    NetworkError(String),
29
30    #[error("API error: {0}")]
31    ApiError(String),
32
33    #[error("Unknown error: {0}")]
34    Unknown(String),
35}