1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
use actix::MailboxError; use elasticsearch::Error as ElasticError; use serde_json::error::Error as SerializeJsonError; use thiserror::Error as ThisError; use url::ParseError as UrlParseError; use crate::response::ItemError; use core::fmt::Error as SerializeError; use std::io::Error as IoError; #[derive(ThisError, Debug)] pub enum Error { #[error("Io Error: `{0:?}`")] IoError(#[from] IoError), #[error("Elastic Error: `{0:?}`")] ElasticError(#[from] ElasticError), #[error("Url Parse Error: `{0:?}`")] UrlParseError(#[from] UrlParseError), #[error("Serialize Error: `{0:?}`")] SerializeError(#[from] SerializeError), #[error("Serialize Json Error: `{0:?}`")] SerializeJsonError(#[from] SerializeJsonError), #[error("Mailbox Error: `{0:?}`")] MailboxError(#[from] MailboxError), #[error("Elasitc Bulk Item Error: `{0:?}`")] BulkItemError(#[from] ItemError), } pub type Result<T> = std::result::Result<T, Error>;