aboutsummaryrefslogtreecommitdiff
path: root/src/response/mod.rs
blob: 0479dd105eef7fe6c908e74ccb8fb2f050d42027 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use serde_derive::{Deserialize, Serialize};

#[derive(Clone, Debug, Deserialize, Serialize)]
#[serde(bound(deserialize = "T: Clone + serde::de::DeserializeOwned"))]
pub struct ResponseData<T> {
    #[serde(rename = "code")]
    pub status: i32,
    #[serde(rename = "resData")]
    pub params: Option<T>,
}

pub trait Response: Sized {
    fn unwrap(_: Option<Self>) -> Self;
}

impl Response for () {
    fn unwrap(_: Option<Self>) -> Self {}
}

pub mod account;
pub mod nameserver;