diff options
Diffstat (limited to 'src/db/backend.rs')
-rw-r--r-- | src/db/backend.rs | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/src/db/backend.rs b/src/db/backend.rs deleted file mode 100644 index 5950747..0000000 --- a/src/db/backend.rs +++ /dev/null @@ -1,27 +0,0 @@ -use barrel::backend::SqlGenerator; -pub use diesel::connection::Connection; - -pub trait UsableBackend: diesel::backend::Backend where *const str: diesel::deserialize::FromSql<diesel::sql_types::Text, Self> {} -impl UsableBackend for diesel::sqlite::Sqlite {} - -pub trait UsableConnection: Connection where <Self as Connection>::Backend: UsableBackend {} -impl UsableConnection for diesel::sqlite::SqliteConnection {} - -pub trait Connectable { - type Connection: UsableConnection; - type SqlGenerator: SqlGenerator; - fn connect(&self) -> diesel::ConnectionResult<Self::Connection>; -} - -pub struct Sqlite { - pub db_file: &'static str, -} - -impl Connectable for Sqlite { - type Connection = diesel::sqlite::SqliteConnection; - type SqlGenerator = barrel::backend::Sqlite; - - fn connect(&self) -> diesel::ConnectionResult<Self::Connection> { - Self::Connection::establish(self.db_file) - } -} |