1#[derive(Debug, thiserror::Error)]
3pub enum RedisError {
4 #[error("Redis pool error: {0}")]
6 Pool(#[from] deadpool_redis::PoolError),
7 #[error("Redis error: {0}")]
9 Redis(#[from] redis::RedisError),
10 #[error("Serialization error: {0}")]
12 Serialization(#[from] serde_json::Error),
13 #[error("Pool config error: {0}")]
15 PoolConfig(#[from] deadpool_redis::ConfigError),
16 #[error("Pool build error: {0}")]
18 PoolBuild(#[from] deadpool_redis::BuildError),
19 #[error("Not found: {0}")]
21 NotFound(String),
22 #[error("Math overflow")]
24 MathOverflow,
25}
26
27impl From<pyra_margin::MathError> for RedisError {
28 fn from(_: pyra_margin::MathError) -> Self {
29 Self::MathOverflow
30 }
31}
32
33pub type RedisResult<T> = Result<T, RedisError>;