burncloud_database_core/
error.rs

1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum DatabaseError {
5    #[error("Connection failed: {0}")]
6    ConnectionFailed(String),
7
8    #[error("Query execution failed: {0}")]
9    QueryFailed(String),
10
11    #[error("Transaction failed: {0}")]
12    TransactionFailed(String),
13
14    #[error("Serialization error: {0}")]
15    SerializationError(String),
16
17    #[error("Not found")]
18    NotFound,
19
20    #[error("Constraint violation: {0}")]
21    ConstraintViolation(String),
22
23    #[error("Database configuration error: {0}")]
24    ConfigurationError(String),
25
26    #[error("Internal database error: {0}")]
27    InternalError(String),
28}
29
30pub type DatabaseResult<T> = Result<T, DatabaseError>;