mod array;
mod auto;
mod backend;
mod compiled;
pub mod connect_diagnosis;
mod dialect;
mod error;
mod executor;
mod foreign_key;
mod geometry;
mod hstore;
pub mod m2m;
#[doc(hidden)]
pub mod model_shortcuts;
mod mysql;
mod pool;
mod postgres;
mod range;
mod sqlite;
mod vector;
mod writers;
#[doc(hidden)]
pub use writers::DeletePlan;
pub(crate) use writers::{compile_date_buckets, compile_delete_plan, DateBucket};
pub use array::Array;
pub use auto::Auto;
pub use backend::{
apply_auto_pk, try_get_returning, try_get_returning_my, try_get_returning_sqlite,
AssignAutoPkPool, MyReturningRow, MysqlAutoIdSet, PgReturningRow, SqliteReturningRow,
};
pub use compiled::CompiledStatement;
pub use connect_diagnosis::{ConnectDiagnosis, ConnectFault};
pub(crate) use dialect::is_uuid_expr;
pub(crate) use dialect::refuse_unbindable_values;
pub use dialect::Dialect;
pub use error::{is_mysql_dup_index_error, is_pg_dup_object_error, ExecError, SqlError};
#[cfg(any(feature = "template_views", feature = "admin", feature = "tenancy"))]
pub(crate) use error::{Refusal, STILL_REFERENCED};
pub use geometry::{Point, SRID_WGS84};
pub use hstore::HStore;
pub use range::Range;
pub use vector::Vector;
#[cfg(feature = "media")]
pub(crate) use executor::bulk_insert_tx;
#[cfg(feature = "jobs")]
pub(crate) use executor::in_any_block;
#[cfg(feature = "jobs-postgres")]
pub(crate) use executor::in_block;
#[cfg(feature = "postgres")]
pub(crate) use executor::insert_returning_on;
pub(crate) use executor::rolled_back;
#[cfg(feature = "mysql")]
pub use executor::row_to_json_my;
#[cfg(feature = "sqlite")]
pub use executor::row_to_json_sqlite;
#[cfg(feature = "template_views")]
pub(crate) use executor::select_stored_uuids;
pub use executor::{
__rustango_require_join, atomic, bulk_insert_pool, bulk_update_pool, count_rows_pool,
delete_pool, delete_tx, explain_pool, fetch_aggregate_dict, fetch_aggregate_pool,
fetch_dates_pool, fetch_datetimes_pool, fetch_paginated_pool, fetch_with_prefetch_filtered,
fetch_with_prefetch_pool, get_or_create, insert_or_ignore, insert_pool, insert_returning_pool,
insert_returning_tx, insert_tx, on_commit, on_commit_pending, raw_execute_pool, raw_execute_tx,
raw_query_pool, raw_query_tx, run_ddl_idempotent, select_one_row_as_json, select_one_row_pool,
select_rows_as_json, select_rows_pool, select_rows_pool_with_related,
select_rows_tx_with_related, transaction_pool, try_get_flat_my, try_get_flat_sqlite,
update_or_create, update_pool, update_tx, write_transaction, AtomicTx, CounterPool, ExistsPool,
ExplainFormat, ExplainOptions, FetcherPool, FetcherTx, FkPkAccess, FlatScalar, HasPkValue,
InsertReturningPool, LoadRelated, MaybeMyFromRow, MaybeMyLoadRelated, MaybeMyScalar,
MaybePgFromRow, MaybePgScalar, MaybeSqliteFromRow, MaybeSqliteLoadRelated, MaybeSqliteScalar,
Page, PoolConn, PoolTx, SqlExecutor, TxGuard, UpdaterPool,
};
pub(crate) use executor::{
bulk_insert_pks_tx, fetch_in_chunks, fetch_select_in_chunks, inserted_pk, truncate_tx,
};
#[cfg(feature = "admin")]
pub(crate) use executor::{select_one_row_as_json_tx, select_rows_as_json_tx};
#[cfg(any(feature = "admin", feature = "tenancy", feature = "template_views"))]
pub(crate) use executor::{stored_key, stored_keys};
pub use executor::{truncate, truncate_sql};
#[cfg(feature = "postgres")]
pub use executor::row_to_json;
#[cfg(feature = "postgres")]
pub use executor::{
annotate_count_children, bulk_insert_on, fetch_with_prefetch, insert_on, select_rows_on,
update_on,
};
pub use executor::{annotate_count_children_on, fetch_aggregate_on};
#[cfg(feature = "postgres")]
#[doc(hidden)]
pub mod __macro_internals {
pub use super::executor::{
bulk_insert_on, delete_on, fetch_with_prefetch, insert_on, insert_returning_on, update_on,
};
}
#[cfg(feature = "postgres")]
pub(crate) use executor::bind_query;
#[cfg(feature = "mysql")]
pub(crate) use executor::bind_query_my;
#[cfg(feature = "sqlite")]
pub(crate) use executor::bind_query_sqlite;
#[cfg(feature = "mysql")]
pub use executor::LoadRelatedMy;
#[cfg(feature = "sqlite")]
pub use executor::LoadRelatedSqlite;
pub use foreign_key::ForeignKey;
pub use m2m::{GenericM2MManager, M2MManager};
pub use mysql::MySql;
pub(crate) use pool::PoolId;
#[cfg(feature = "tenancy")]
pub(crate) use pool::{checkout_check, tuning as pool_tuning};
pub use pool::{configure_pools, Pool, PoolError, PoolTuning};
pub use postgres::Postgres;
#[cfg(feature = "sqlite")]
pub(crate) use sqlite::encode_datetime;
#[cfg(feature = "sqlite")]
pub(crate) use sqlite::is_now_expr;
pub use sqlite::Sqlite;
#[cfg(feature = "sqlite")]
pub(crate) use sqlite::SQLITE_CANONICAL_GLOB;
pub(crate) use sqlite::SQLITE_DATETIME_FORMAT;
#[doc(hidden)]
pub use sqlx;