mirror of https://github.com/mastodon/flodgatt
51 lines
1.2 KiB
Rust
51 lines
1.2 KiB
Rust
use super::super::{redis::RedisConnErr, redis_msg::RedisParseErr};
|
|
use crate::err::TimelineErr;
|
|
|
|
use serde_json;
|
|
use std::fmt;
|
|
|
|
#[derive(Debug)]
|
|
pub enum ReceiverErr {
|
|
TimelineErr(TimelineErr),
|
|
EventErr(serde_json::Error),
|
|
RedisParseErr(RedisParseErr),
|
|
RedisConnErr(RedisConnErr),
|
|
}
|
|
|
|
impl fmt::Display for ReceiverErr {
|
|
fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> {
|
|
use ReceiverErr::*;
|
|
match self {
|
|
EventErr(inner) => write!(f, "{}", inner),
|
|
RedisParseErr(inner) => write!(f, "{}", inner),
|
|
RedisConnErr(inner) => write!(f, "{}", inner),
|
|
TimelineErr(inner) => write!(f, "{}", inner),
|
|
}?;
|
|
Ok(())
|
|
}
|
|
}
|
|
|
|
impl From<serde_json::Error> for ReceiverErr {
|
|
fn from(error: serde_json::Error) -> Self {
|
|
Self::EventErr(error)
|
|
}
|
|
}
|
|
|
|
impl From<RedisConnErr> for ReceiverErr {
|
|
fn from(e: RedisConnErr) -> Self {
|
|
Self::RedisConnErr(e)
|
|
}
|
|
}
|
|
|
|
impl From<TimelineErr> for ReceiverErr {
|
|
fn from(e: TimelineErr) -> Self {
|
|
Self::TimelineErr(e)
|
|
}
|
|
}
|
|
|
|
impl From<RedisParseErr> for ReceiverErr {
|
|
fn from(e: RedisParseErr) -> Self {
|
|
Self::RedisParseErr(e)
|
|
}
|
|
}
|