1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
use api::{Id, Timestamp};
#[derive(Debug, PartialEq, Eq, Deserialize, Clone)]
pub struct LinkInfo {
pub status: LinkStatus,
pub link: String, }
#[derive(Debug, PartialEq, Eq, Deserialize, Clone)]
pub struct ScreenNameInfo {
#[serde(rename="type")]
pub kind: String,
pub object_id: Id,
}
enum_str! { LinkStatus {
NotBanned = "not_banned",
Banned = "banned",
Processing = "processing"
}}
request_ref! {
#[derive(Copy, Eq)]
struct CheckLink for ["utils.checkLink"](v => 5.44) -> LinkInfo {
url: str = ("") => {=},
}
}
request_ref! {
#[derive(Copy, Eq)]
struct ResolveScreenName for ["utils.resolveScreenName"](v => 5.44) -> Option<ScreenNameInfo> {
screen_name: str = ("") => {=},
}
}
request! {
struct GetServerTime for ["utils.getServerTime"](v => 5.44) -> Timestamp;
}