aboutsummaryrefslogtreecommitdiff
path: root/examples/factory/interfaces/user.rs
blob: aafd0cb1654483f23abbb8ef9b5119a8440d5da5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
use syrette::factory;
use syrette::ptr::TransientPtr;

pub trait IUser
{
    fn get_name(&self) -> &'static str;
    fn get_date_of_birth(&self) -> &'static str;
    fn get_password(&self) -> &'static str;
}

#[factory]
pub type IUserFactory =
    dyn Fn(&'static str, &'static str, &'static str) -> TransientPtr<dyn IUser>;