sql_middleware/
lib.rs

1#![doc = include_str!("../docs.md")]
2#![forbid(unsafe_code)]
3
4// Test utilities module - only compiled with test-utils feature
5#[cfg(feature = "test-utils")]
6pub mod test_utils;
7
8// Benchmark utilities module - for benchmarks
9#[cfg(feature = "benchmarks")]
10pub mod benchmark;
11
12// Public API modules
13pub mod conversion;
14pub mod exports;
15pub mod helpers;
16pub mod prelude;
17
18// Core modules
19pub mod error;
20pub mod executor;
21pub mod middleware;
22pub mod pool;
23pub mod query;
24pub mod results;
25pub mod types;
26
27// Private database-specific modules
28#[cfg(feature = "libsql")]
29pub mod libsql;
30#[cfg(feature = "mssql")]
31mod mssql;
32#[cfg(feature = "postgres")]
33pub mod postgres;
34#[cfg(feature = "sqlite")]
35mod sqlite;
36#[cfg(feature = "turso")]
37pub mod turso;
38
39// Direct exports for frequently used types
40pub use middleware::{
41    AnyConnWrapper, AsyncDatabaseExecutor, ConfigAndPool, ConversionMode, CustomDbRow,
42    DatabaseType, MiddlewarePool, MiddlewarePoolConnection, ParamConverter, QueryAndParams,
43    ResultSet, RowValues, SqlMiddlewareDbError,
44};
45
46// Re-export from modules for convenience
47pub use conversion::convert_sql_params;
48pub use exports::*;
49
50// Compatibility alias for existing code
51pub mod test_helpers {
52    pub use crate::helpers::create_test_row;
53}