1#![doc = include_str!("../docs.md")]
2#![forbid(unsafe_code)]
3
4#[path = "test_utils/test_helpers.rs"]
6pub mod test_helpers;
7#[cfg(feature = "test-utils")]
8pub mod test_utils;
9
10#[cfg(feature = "benchmarks")]
12pub mod benchmark;
13
14pub mod conversion;
16pub mod prelude;
17pub mod translation;
18pub mod tx_outcome;
19pub mod typed;
20pub use typed as typed_api;
22#[cfg(feature = "postgres")]
23pub mod typed_postgres;
24#[cfg(feature = "sqlite")]
25pub mod typed_sqlite;
26#[cfg(feature = "turso")]
27pub mod typed_turso;
28
29pub mod error;
31pub(crate) mod executor;
32pub mod middleware;
33pub mod pool;
34pub mod query;
35
36pub(crate) mod query_builder;
38pub(crate) mod results;
39pub(crate) mod types;
40
41#[cfg(feature = "libsql")]
43#[deprecated(
44 note = "LibSQL support is deprecated in favor of the Turso backend and will be removed in a future release."
45)]
46pub mod libsql;
47#[cfg(feature = "mssql")]
48pub mod mssql;
49#[cfg(feature = "postgres")]
50pub mod postgres;
51#[cfg(feature = "sqlite")]
52pub mod sqlite;
53#[cfg(feature = "turso")]
54pub mod turso;
55
56pub use middleware::{
58 AnyConnWrapper, BatchTarget, ConfigAndPool, ConversionMode, CustomDbRow, DatabaseType,
59 MiddlewarePool, MiddlewarePoolConnection, ParamConverter, QueryAndParams, QueryBuilder,
60 QueryTarget, ResultSet, RowValues, SqlMiddlewareDbError, TxOutcome, execute_batch,
61};
62#[cfg(feature = "libsql")]
63#[deprecated(
64 note = "LibSQL support is deprecated in favor of the Turso backend and will be removed in a future release."
65)]
66pub use middleware::{
67 LibsqlOptions, LibsqlOptionsBuilder, LibsqlRemoteOptions, LibsqlRemoteOptionsBuilder,
68};
69#[cfg(feature = "mssql")]
70pub use middleware::{MssqlOptions, MssqlOptionsBuilder};
71#[cfg(feature = "postgres")]
72pub use middleware::{PgConfig, PostgresOptions, PostgresOptionsBuilder};
73#[cfg(feature = "sqlite")]
74pub use middleware::{SqliteOptions, SqliteOptionsBuilder};
75#[cfg(feature = "turso")]
76pub use middleware::{TursoOptions, TursoOptionsBuilder};
77
78pub use conversion::convert_sql_params;
80pub use translation::{PlaceholderStyle, QueryOptions, TranslationMode, translate_placeholders};