Skip to main content

sqlx_cloudflare_do/
database.rs

1use sqlx_core::database::Database;
2
3use crate::{
4    DoArgumentValue, DoArguments, DoColumn, DoConnection, DoQueryResult, DoRow, DoStatement,
5    DoTransactionManager, DoTypeInfo, DoValue, DoValueRef,
6};
7
8/// The Cloudflare Durable Object storage driver: the type sqlx code names in
9/// `Executor<'_, Database = Do>`, `sqlx::query_as::<Do, _>` and so on.
10#[derive(Debug)]
11pub struct Do;
12
13impl Database for Do {
14    type Connection = DoConnection;
15
16    type TransactionManager = DoTransactionManager;
17
18    type Row = DoRow;
19
20    type QueryResult = DoQueryResult;
21
22    type Column = DoColumn;
23
24    type TypeInfo = DoTypeInfo;
25
26    type Value = DoValue;
27    type ValueRef<'r> = DoValueRef<'r>;
28
29    type Arguments = DoArguments;
30    type ArgumentBuffer = Vec<DoArgumentValue>;
31
32    type Statement = DoStatement;
33
34    const NAME: &'static str = "Do";
35
36    const URL_SCHEMES: &'static [&'static str] = &["do"];
37}