oauth1_twitter/endpoints/
common.rs1use http_api_client_endpoint::{
2 http::{Error as HttpError, StatusCode},
3 Body,
4};
5use reqwest::Error as ReqwestError;
6use reqwest_oauth1::SignerError as ReqwestOauth1SignerError;
7use serde_json::Error as SerdeJsonError;
8use serde_urlencoded::de::Error as SerdeUrlencodedDeError;
9
10use crate::objects::response_body_fail::ResponseBodyFail;
11
12#[derive(Debug, Clone)]
14pub enum EndpointRet<T> {
15 Ok(T),
16 Other((StatusCode, Result<ResponseBodyFail, Body>)),
17}
18
19#[derive(Debug)]
21pub enum EndpointError {
22 MakeReqwestRequestBuilderFailed(ReqwestOauth1SignerError),
23 MakeReqwestRequestFailed(ReqwestError),
24 MakeRequestFailed(HttpError),
25 DeResponseBodyOkFailed(SerdeUrlencodedDeError),
26 DeResponseBodyOkJsonFailed(SerdeJsonError),
27 Other(Box<dyn std::error::Error + Send + Sync + 'static>),
28}
29
30impl core::fmt::Display for EndpointError {
31 fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
32 write!(f, "{self:?}")
33 }
34}
35
36impl std::error::Error for EndpointError {}