1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/*
   Appellation: setup <mod>
   Contrib: FL03 <jo3mccain@icloud.com>
*/

pub trait Init {
    fn init(self) -> Self;
}

pub trait InitInplace {
    fn init(&mut self);
}

pub trait Setup {
    type Config;

    fn setup(&mut self, config: Self::Config);
}