1#![cfg_attr(docsrs, feature(doc_cfg))]
2#![doc = include_str!("lib.md")]
3
4pub use sqlx_core::acquire::Acquire;
5pub use sqlx_core::arguments::{Arguments, IntoArguments};
6pub use sqlx_core::column::Column;
7pub use sqlx_core::column::ColumnIndex;
8pub use sqlx_core::connection::{ConnectOptions, Connection};
9pub use sqlx_core::database::{self, Database};
10pub use sqlx_core::describe::Describe;
11pub use sqlx_core::executor::{Execute, Executor};
12pub use sqlx_core::from_row::FromRow;
13pub use sqlx_core::pool::{self, Pool};
14pub use sqlx_core::query::{query, query_with};
15pub use sqlx_core::query_as::{query_as, query_as_with};
16pub use sqlx_core::query_builder::{self, QueryBuilder};
17pub use sqlx_core::query_scalar::{query_scalar, query_scalar_with};
18pub use sqlx_core::raw_sql::{raw_sql, RawSql};
19pub use sqlx_core::row::Row;
20pub use sqlx_core::statement::Statement;
21pub use sqlx_core::transaction::{Transaction, TransactionManager};
22pub use sqlx_core::type_info::TypeInfo;
23pub use sqlx_core::types::Type;
24pub use sqlx_core::value::{Value, ValueRef};
25pub use sqlx_core::Either;
26
27#[doc(inline)]
28pub use sqlx_core::error::{self, Error, Result};
29
30#[cfg(feature = "migrate")]
31pub use sqlx_core::migrate;
32
33#[cfg(feature = "mysql")]
34#[cfg_attr(docsrs, doc(cfg(feature = "mysql")))]
35#[doc(inline)]
36pub use sqlx_mysql::{self as mysql, MySql, MySqlConnection, MySqlExecutor, MySqlPool};
37
38#[cfg(feature = "postgres")]
39#[cfg_attr(docsrs, doc(cfg(feature = "postgres")))]
40#[doc(inline)]
41pub use sqlx_build_trust_postgres::{self as postgres, PgConnection, PgExecutor, PgPool, Postgres};
42
43#[cfg(feature = "sqlite")]
44#[cfg_attr(docsrs, doc(cfg(feature = "sqlite")))]
45#[doc(inline)]
46pub use sqlx_build_trust_sqlite::{
47 self as sqlite, Sqlite, SqliteConnection, SqliteExecutor, SqlitePool,
48};
49
50#[cfg(feature = "any")]
51#[cfg_attr(docsrs, doc(cfg(feature = "any")))]
52pub use crate::any::{reexports::*, Any, AnyExecutor};
53
54#[cfg(feature = "macros")]
55#[doc(hidden)]
56pub extern crate sqlx_macros;
57
58#[cfg(feature = "macros")]
60#[doc(hidden)]
61pub use sqlx_macros::{FromRow, Type};
62
63#[doc = include_str!("macros/test.md")]
66#[cfg(feature = "macros")]
67pub use sqlx_macros::test;
68
69#[doc(hidden)]
70#[cfg(feature = "migrate")]
71pub use sqlx_core::testing;
72
73#[doc(hidden)]
74pub use sqlx_core::rt::test_block_on;
75
76#[cfg(feature = "any")]
77pub mod any;
78
79#[cfg(feature = "macros")]
80mod macros;
81
82#[cfg(feature = "macros")]
84#[doc(hidden)]
85pub mod ty_match;
86
87#[doc(hidden)]
88pub use sqlx_core::rt as __rt;
89
90pub mod types {
106 pub use sqlx_core::types::*;
107
108 #[cfg(feature = "macros")]
109 #[doc(hidden)]
110 pub use sqlx_macros::Type;
111}
112
113pub mod encode {
115 pub use sqlx_core::encode::{Encode, IsNull};
116
117 #[cfg(feature = "macros")]
118 #[doc(hidden)]
119 pub use sqlx_macros::Encode;
120}
121
122pub use self::encode::Encode;
123
124pub mod decode {
126 pub use sqlx_core::decode::Decode;
127
128 #[cfg(feature = "macros")]
129 #[doc(hidden)]
130 pub use sqlx_macros::Decode;
131}
132
133pub use self::decode::Decode;
134
135pub mod query {
137 pub use sqlx_core::query::{Map, Query};
138 pub use sqlx_core::query_as::QueryAs;
139 pub use sqlx_core::query_scalar::QueryScalar;
140}
141
142pub mod prelude {
144 pub use super::Acquire;
145 pub use super::ConnectOptions;
146 pub use super::Connection;
147 pub use super::Decode;
148 pub use super::Encode;
149 pub use super::Executor;
150 pub use super::FromRow;
151 pub use super::IntoArguments;
152 pub use super::Row;
153 pub use super::Statement;
154 pub use super::Type;
155}
156
157#[cfg(feature = "postgres")]
158extern crate sqlx_build_trust_postgres as sqlx_postgres;
159
160extern crate sqlx_build_trust_core as sqlx_core;