From 4f71e566c3faa7ba70acf2664beed4652c41bcdc Mon Sep 17 00:00:00 2001 From: shockrah Date: Tue, 2 Jun 2020 22:10:28 -0700 Subject: [PATCH] Removed sql_traits module as it was merely a stepping stone module Channel struct now adpots a from_tup method and can be seen in use in get_channels_vec --- server/src/channels.rs | 13 +++---------- server/src/sql_traits.rs | 8 -------- 2 files changed, 3 insertions(+), 18 deletions(-) delete mode 100644 server/src/sql_traits.rs diff --git a/server/src/channels.rs b/server/src/channels.rs index 41268fe..d14781a 100644 --- a/server/src/channels.rs +++ b/server/src/channels.rs @@ -4,8 +4,6 @@ use mysql_async::{Conn, Pool}; use mysql_async::error::Error; use mysql_async::prelude::Queryable; -use crate::sql_traits::DBTrait; - enum ChannelType { Voice, Text, @@ -37,8 +35,8 @@ struct Channel { kind: ChannelType } -impl DBTrait for Channel { - fn from(tup: (i32, String, String, i32)) -> Channel { +impl Channel { + fn from_tup(tup: (i32, String, String, i32)) -> Channel { Channel { id: tup.0, name: tup.1, @@ -61,12 +59,7 @@ async fn get_channels_vec(conn: Conn) -> Result, Error> { let rows_db = conn.prep_exec(r"SELECT * FROM channels", ()).await?; let (_, rows) = rows_db.map_and_drop(|row| { let (id, name, desc, kind): (i32, String, String, i32) = mysql_async::from_row(row); - Channel { - id: id, - name: name, - description: desc, - kind: ChannelType::from_i32(kind) - } + Channel::from_tup((id, name, desc, kind)) }).await?; Ok(rows) diff --git a/server/src/sql_traits.rs b/server/src/sql_traits.rs deleted file mode 100644 index e2dc4e7..0000000 --- a/server/src/sql_traits.rs +++ /dev/null @@ -1,8 +0,0 @@ -// Module with some basic traits we supply for things that go in + out of -// mysql_async - - -pub trait DBTrait { - fn from(db_tup: (i32, String, String, i32)) -> Self; - fn as_json_str(&self) -> String; -} \ No newline at end of file