1use crate::types::ResourceId;
3use chrono::prelude::*;
4
5#[cfg(feature = "serde")]
6use serde::{Deserialize, Serialize};
7
8#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
14#[derive(Clone, Debug)]
15pub struct User {
16 pub rid: ResourceId,
17 pub created: DateTime<Utc>,
18 pub email: String,
19 pub name: Option<String>,
20}
21
22impl User {
23 pub fn new(email: String, name: Option<String>) -> User {
24 User {
25 rid: ResourceId::new(),
26 created: Utc::now(),
27 name,
28 email,
29 }
30 }
31}
32#[cfg(test)]
33#[path = "./user_test.rs"]
34mod user_test;