qwreey_rocket/
export.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
28
use qwreey_utility_rs::ArcRwUserdata;
use rocket_dyn_templates::tera::Tera;

use crate::{RocketBuild, RocketIgnite, RocketOrbit, RouteList};

pub trait RouteExport: 'static + Sync + Send {
    fn routes(&self) -> RouteList {
        vec![]
    }
    #[allow(unused)]
    fn build(&self, rocket: RocketBuild, userdata: ArcRwUserdata) -> Result<RocketBuild, String> {
        Ok(rocket)
    }
    #[allow(unused)]
    fn ignite(&self, rocket: RocketIgnite, userdata: ArcRwUserdata) -> Result<RocketIgnite,String> {
        Ok(rocket)
    }
    fn base(&self) -> &'static str {
        "/"
    }
    #[allow(unused)]
    fn orbit(&self, rocket: &RocketOrbit, userdata: ArcRwUserdata) -> Result<(),String> {
        Ok(())
    }
    #[allow(unused)]
    fn tera(&self, tera: &mut Tera, userdata: ArcRwUserdata) {}
}
pub type RouteExportList = Vec<Box<dyn RouteExport>>;