diff options
Diffstat (limited to 'src/database/types.rs')
-rw-r--r-- | src/database/types.rs | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/database/types.rs b/src/database/types.rs index 1a8ab86..a0bfd12 100644 --- a/src/database/types.rs +++ b/src/database/types.rs @@ -32,17 +32,27 @@ impl std::convert::From<Date> for sqlite::Value { pub struct User { username: String, id: UID, + deleted: bool, } impl User { pub fn new(username: String, id: UID) -> User { User { username, id, + deleted: false, } } - pub fn id(&self) -> UID { - self.id + pub fn construct(username: String, id: UID, deleted: bool) -> User { + User { + username, + id, + deleted, + } + } + + pub fn deleted(&self) -> bool { + self.deleted } } @@ -67,6 +77,11 @@ impl std::convert::From<i64> for UID { } } } +impl std::convert::From<UID> for i64 { + fn from(t :UID) -> i64 { + t.0 as i64 + } +} impl std::convert::From<UID> for sqlite::Value { fn from(t: UID) -> sqlite::Value { (t.0 as i64).into() @@ -83,16 +98,6 @@ pub struct Message { date: Date, } impl Message { - pub fn new(message: String, sender: &User, id: UID, reply_to: Option<UID>) -> Message { - Message { - id, - sender: sender.id(), - message, - reply_to, - deleted: false, - date: Date::now(), - } - } pub fn construct(msg: String, sender: UID, id: UID, reply_to: Option<UID>, date: Date, deleted: bool) -> Message { Message { date: date, |