pandora_rs2/
response.rs

1#[derive(Debug, Serialize, Deserialize)]
2pub enum Stat {
3    #[serde(rename = "ok")]
4    Ok,
5    #[serde(rename = "fail")]
6    Fail,
7}
8
9#[derive(Debug, Deserialize)]
10pub struct Response<T> {
11    pub stat: Stat,
12    pub result: Option<T>,
13    pub message: Option<String>,
14    pub code: Option<u32>,
15}
16
17impl<T> Response<T> {
18    pub fn from_result(result: T) -> Self {
19        Response {
20            stat: Stat::Ok,
21            result: Some(result),
22            message: None,
23            code: None,
24        }
25    }
26
27    pub fn from_error(message: String, code: u32) -> Self {
28        Response {
29            stat: Stat::Fail,
30            result: None,
31            message: Some(message),
32            code: Some(code),
33        }
34    }
35}