/
Kuj1
/
tg_point
Обзор
Документация
Войти
/
Kuj1
/
tg_point
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/errors.rs
49 строк
1 KB
kuj1
refactored code
07 июл 2024, 19:47
07 июл 2024, 19:47
f57ddae
Код
Авторство
О чём код?
use std::io; use teloxide::{dispatching::dialogue::InMemStorageError, RequestError}; use thiserror::Error; pub type SendResult = Result<(), SendError>; pub type ReceiveResult<R> = Result<R, ReceiveError>; pub type ConnectionResult = Result<(), ConnectionError>; pub type DialogueResult = Result<(), BotError>; #[derive(Debug, Error)] pub enum SendError { #[error("{0}")] Io(#[from] io::Error), #[error("Bad request")] BadRequest, } #[derive(Debug, Error)] pub enum ReceiveError { #[error("{0}")] Io(#[from] io::Error), #[error("{0}")] Bincode(#[from] bincode::Error), #[error("Bad encoding")] BadEncoding, } #[derive(Debug, Error)] pub enum ConnectionError { #[error("Bad connection")] BadConnection, #[error(transparent)] RequestError(#[from] RequestError), } #[derive(Debug, Error)] pub enum BotError { #[error(transparent)] SendError(#[from] SendError), #[error(transparent)] ReceiveError(#[from] ReceiveError), #[error(transparent)] DialogueError(#[from] InMemStorageError), #[error(transparent)] ConnectionError(#[from] ConnectionError), #[error(transparent)] RequestError(#[from] RequestError), }