Skip to main content

bunnydb_http/
error.rs

1/// Error type returned by this crate.
2#[derive(Debug, thiserror::Error)]
3pub enum BunnyDbError {
4    /// Network or request execution error from `reqwest`.
5    #[error("transport error: {0}")]
6    Transport(reqwest::Error),
7    /// Non-success HTTP status code with raw response body.
8    #[error("http error {status}: {body}")]
9    Http { status: u16, body: String },
10    /// SQL/pipeline error returned by Bunny.net API.
11    #[error("pipeline error at request {request_index}: {message}")]
12    Pipeline {
13        /// Index of the failing request in the pipeline payload.
14        request_index: usize,
15        /// Error message text from upstream API.
16        message: String,
17        /// Optional engine-specific error code.
18        code: Option<String>,
19    },
20    /// Response decoding or protocol-shape validation error.
21    #[error("decode error: {0}")]
22    Decode(String),
23}