1use wikiproc::WriteUrl;
2
3use super::Limit;
4use crate::types::NowableTime;
5
6#[derive(WriteUrl, Clone)]
7#[wp(prepend_all = "rc")]
8pub struct ListRc {
9 pub start: Option<NowableTime>,
10 pub end: Option<NowableTime>,
11 pub limit: Limit,
12 pub prop: RcProp,
13 pub ty: RcType,
14}
15
16#[rustfmt::skip]
17wikiproc::bitflags! {
18 pub struct RcProp: u16 {
19 const TITLE = 1 << 0;
20 const TIMESTAMP = 1 << 1;
21 const IDS = 1 << 2;
22 const FLAGS = 1 << 3;
23 const LOG_INFO = 1 << 4;
24 const ORES_SCORES = 1 << 5;
25 const PARSED_COMMENT = 1 << 6;
26 const PATROLLED = 1 << 7;
27 const REDIRECT = 1 << 8;
28 const SHA1 = 1 << 9;
29 const SIZES = 1 << 10;
30 const TAGS = 1 << 11;
31 }
32}
33
34#[rustfmt::skip]
35wikiproc::bitflags! {
36 pub struct RcType: u8 {
37 const EDIT = 1 << 0;
38 const NEW = 1 << 1;
39 const EXTERNAL = 1 << 2;
40 const LOG = 1 << 3;
41 const CATEGORIZE = 1 << 4;
42 }
43}