Skip to main content

hippmem_model/
error.rs

1//! Model layer error types: 08 §6.
2
3/// Model operation error.
4#[derive(thiserror::Error, Debug)]
5pub enum ModelError {
6    /// Network or timeout error.
7    #[error("network/timeout: {0}")]
8    Network(String),
9
10    /// Authentication / missing key.
11    #[error("auth/missing key for backend {0}")]
12    Auth(String),
13
14    /// Rate limited.
15    #[error("rate limited")]
16    RateLimited,
17
18    /// Failed to parse model output.
19    #[error("parse model output: {0}")]
20    Parse(String),
21
22    /// Backend unavailable.
23    #[error("backend unavailable: {0}")]
24    Unavailable(String),
25}
26
27/// Model layer Result alias.
28pub type ModelResult<T> = Result<T, ModelError>;