yfunc_rust/
page.rs

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
use serde::Serialize;

use crate::prelude::*;

#[derive(Serialize, Debug)]
pub struct Page<T: Serialize> {
    pub total_count: i64,
    pub page_num: i32,
    pub page_size: i32,
    pub data: Vec<T>
}

impl<T: Serialize> Page<T> {

    pub fn to_json(&self, pretty: bool) -> YRes<String> {
        if pretty {
            serde_json::to_string_pretty(self).map_err(|e|
                err!(ParseError::"parse fish page to pretty json string", e)
            )
        } else {
            serde_json::to_string(self).map_err(|e|
                err!(ParseError::"parse fish page to json string", e)
            )
        }
    }

}