apierr/
lib.rs

1#![feature(try_trait_v2)]
2
3use std::{error::Error, fmt};
4
5#[derive(Debug)]
6pub struct Response {
7  pub code: u16,
8  pub body: Vec<u8>,
9}
10
11impl From<(u16, Vec<u8>)> for Response {
12  fn from((code, body): (u16, Vec<u8>)) -> Self {
13    Response { code, body }
14  }
15}
16
17impl From<u16> for Response {
18  fn from(code: u16) -> Self {
19    Response { code, body: vec![] }
20  }
21}
22
23impl fmt::Display for Response {
24  fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
25    write!(f, "Response {} : {:?}", self.code, self.body)
26  }
27}
28
29impl Error for Response {}
30
31#[cfg(feature = "err")]
32mod err;
33
34#[cfg(feature = "err")]
35pub use err::*;
36
37// pub fn user() -> Result<(), Response> {
38//   Err(Response {
39//     code: PRECONDITION_FAILED,
40//     body: b"".into(),
41//   })
42// }
43//
44// User,
45// Captcha,
46// Form {
47//   err_li: Vec<(String, u64)>
48// },