sqlx_rxqlite/
database.rs

1pub(crate) use sqlx_core::database::{
2    Database, HasArguments, HasStatement, HasStatementCache, HasValueRef,
3};
4
5use crate::{
6    connection::RXQLiteConnection, /*RXQLiteArgumentValue,*/ RXQLiteArguments, RXQLiteColumn,
7    /*RXQLiteConnection, */ RXQLiteQueryResult, RXQLiteRow, RXQLiteStatement,
8    RXQLiteTransactionManager, RXQLiteTypeInfo, RXQLiteValue, RXQLiteValueRef,
9};
10
11/// RXQLite database driver.
12#[derive(Debug)]
13pub struct RXQLite;
14
15impl Database for RXQLite {
16    type Connection = RXQLiteConnection;
17
18    type TransactionManager = RXQLiteTransactionManager;
19
20    type Row = RXQLiteRow;
21
22    type QueryResult = RXQLiteQueryResult;
23
24    type Column = RXQLiteColumn;
25
26    type TypeInfo = RXQLiteTypeInfo;
27
28    type Value = RXQLiteValue;
29
30    const NAME: &'static str = "RXQLite";
31
32    const URL_SCHEMES: &'static [&'static str] = &["rxqlite"];
33}
34
35impl<'r> HasValueRef<'r> for RXQLite {
36    type Database = RXQLite;
37
38    type ValueRef = RXQLiteValueRef<'r>;
39}
40
41impl<'q> HasArguments<'q> for RXQLite {
42    type Database = RXQLite;
43
44    type Arguments = RXQLiteArguments;
45
46    type ArgumentBuffer = Vec<rxqlite_common::Value>;
47}
48
49impl<'q> HasStatement<'q> for RXQLite {
50    type Database = RXQLite;
51
52    type Statement = RXQLiteStatement<'q>;
53}
54
55impl HasStatementCache for RXQLite {}