#![cfg_attr(docsrs, feature(doc_cfg, rustdoc_internals))]
#![allow(
unexpected_cfgs,
unused_imports,
unused_macros,
unused_mut,
dead_code,
clippy::redundant_closure,
clippy::needless_question_mark,
clippy::await_holding_refcell_ref,
clippy::duplicated_attributes,
clippy::single_component_path_imports
)]
#[macro_use]
mod builder;
#[macro_use]
mod transaction;
#[macro_use]
mod macros;
#[doc(hidden)]
pub(crate) use drizzle_builder_join_impl;
#[doc(hidden)]
pub(crate) use transaction_builder_join_impl;
pub use drizzle_core::error::Result;
pub use drizzle_macros::sql;
pub use drizzle_types::Dialect;
pub mod error {
pub use drizzle_core::error::DrizzleError;
}
pub mod ddl {
pub use drizzle_types::postgres;
pub use drizzle_types::sqlite;
}
pub mod migrations {
pub use drizzle_migrations::*;
}
pub mod core {
pub use drizzle_core::{OrderBy, Param, ParamBind, Placeholder, SQL, SQLChunk, Token};
pub use drizzle_core::ToSQL;
pub use drizzle_core::traits::*;
pub use drizzle_core::prepared::{OwnedPreparedStatement, PreparedStatement};
pub use drizzle_core::types;
pub use drizzle_core::expr;
#[doc(hidden)]
pub use drizzle_core::impl_try_from_int;
#[doc(hidden)]
pub use drizzle_core::schema::SQLEnumInfo;
}
#[cfg(feature = "sqlite")]
#[cfg_attr(docsrs, doc(cfg(feature = "sqlite")))]
pub mod sqlite {
pub use drizzle_macros::{
SQLiteEnum, SQLiteFromRow, SQLiteIndex, SQLiteSchema, SQLiteTable, SQLiteView,
};
pub use drizzle_sqlite::params;
pub use drizzle_sqlite::{
attrs, builder, common, connection, expressions, helpers, pragma, traits, values,
};
#[cfg(feature = "rusqlite")]
#[cfg_attr(docsrs, doc(cfg(feature = "rusqlite")))]
pub mod rusqlite {
pub use crate::builder::sqlite::rusqlite::{Drizzle, DrizzleBuilder};
pub use crate::transaction::sqlite::rusqlite::Transaction;
}
#[cfg(feature = "libsql")]
#[cfg_attr(docsrs, doc(cfg(feature = "libsql")))]
pub mod libsql {
pub use crate::builder::sqlite::libsql::{Drizzle, DrizzleBuilder};
pub use crate::transaction::sqlite::libsql::Transaction;
}
#[cfg(feature = "turso")]
#[cfg_attr(docsrs, doc(cfg(feature = "turso")))]
pub mod turso {
pub use crate::builder::sqlite::turso::{Drizzle, DrizzleBuilder};
pub use crate::transaction::sqlite::turso::Transaction;
}
pub mod prelude {
pub use crate::core::ToSQL;
pub use crate::core::{OrderBy, Param, ParamBind, Placeholder, SQL, SQLChunk, Token};
pub use drizzle_core::prepared::{OwnedPreparedStatement, PreparedStatement};
pub use drizzle_core::traits::*;
pub use drizzle_macros::{
SQLiteEnum, SQLiteFromRow, SQLiteIndex, SQLiteSchema, SQLiteTable, SQLiteView,
};
pub use drizzle_sqlite::attrs::*;
pub use drizzle_sqlite::common::SQLiteSchemaType;
pub use drizzle_sqlite::params;
pub use drizzle_sqlite::traits::{
SQLiteColumn, SQLiteColumnInfo, SQLiteTable, SQLiteTableInfo,
};
pub use drizzle_sqlite::values::{SQLiteInsertValue, SQLiteUpdateValue, SQLiteValue};
}
}
#[cfg(feature = "postgres")]
#[cfg_attr(docsrs, doc(cfg(feature = "postgres")))]
pub mod postgres {
pub use drizzle_macros::{
PostgresEnum, PostgresFromRow, PostgresIndex, PostgresSchema, PostgresTable, PostgresView,
};
pub use drizzle_postgres::params;
pub use drizzle_postgres::{
attrs, builder, common, expr, expressions, helpers, traits, values,
};
#[cfg(all(feature = "postgres-sync", not(feature = "tokio-postgres")))]
pub use drizzle_postgres::Row;
#[cfg(feature = "tokio-postgres")]
pub use drizzle_postgres::Row;
#[cfg(feature = "postgres-sync")]
#[cfg_attr(docsrs, doc(cfg(feature = "postgres-sync")))]
pub mod sync {
pub use crate::builder::postgres::postgres_sync::{Drizzle, DrizzleBuilder};
pub use crate::transaction::postgres::postgres_sync::Transaction;
}
#[cfg(feature = "tokio-postgres")]
#[cfg_attr(docsrs, doc(cfg(feature = "tokio-postgres")))]
pub mod tokio {
pub use crate::builder::postgres::tokio_postgres::{Drizzle, DrizzleBuilder};
pub use crate::transaction::postgres::tokio_postgres::Transaction;
}
pub mod prelude {
pub use crate::core::ToSQL;
pub use crate::core::{OrderBy, Param, ParamBind, Placeholder, SQL, SQLChunk, Token};
pub use drizzle_core::prepared::{OwnedPreparedStatement, PreparedStatement};
pub use drizzle_core::traits::*;
pub use drizzle_macros::{
PostgresEnum, PostgresFromRow, PostgresIndex, PostgresSchema, PostgresTable,
PostgresView,
};
pub use drizzle_postgres::attrs::*;
pub use drizzle_postgres::common::PostgresSchemaType;
pub use drizzle_postgres::params;
pub use drizzle_postgres::traits::{
PostgresColumn, PostgresColumnInfo, PostgresTable, PostgresTableInfo,
};
pub use drizzle_postgres::values::{
PostgresInsertValue, PostgresUpdateValue, PostgresValue,
};
}
}
#[cfg(feature = "mysql")]
#[cfg_attr(docsrs, doc(cfg(feature = "mysql")))]
pub mod mysql {}