pub mod binary;
pub mod catalog;
pub mod config;
pub mod connection;
pub mod export;
pub mod import;
pub mod mysql;
pub mod plan;
pub mod postgres;
pub mod query;
pub mod query_log;
pub mod runtime;
pub mod schema;
pub mod sql;
pub mod sqlite;
pub mod statement;
pub mod store;
#[cfg(test)]
pub(crate) mod tests;
pub use catalog::{Catalog, CatalogEntry, CatalogKind, Query};
pub(crate) use config::file_name;
pub use config::{ConnectionConfig, Engine, SafetyMode, TagColor, is_risky_auto_apply};
pub(crate) use connection::POOL_SIZE;
pub use connection::{
Connection, DatabaseObject, ObjectKind, QueryDigest, RowKey, StoredKind, StoredObject,
};
pub use import::{ImportProgress, ImportRequest, ImportSummary, OnError};
pub use plan::{Explained, Plan, PlanNode};
pub use query_log::{LoggedQuery, QueryOutcome, QuerySource};
pub use schema::{
ColumnDef, ForeignKeyDef, IndexDef, RebuildSource, ReferentialAction, TableSchema,
};
pub use sql::quote_identifier;
pub(crate) use sql::{keyword_literal, placeholder, quote_literal, text_type, typed_placeholder};
pub use sqlite::Maintenance;
macro_rules! decode {
($row:expr, $index:expr, $ty:ty) => {
$row.try_get::<$ty, _>($index)
.ok()
.map(|value| value.to_string())
};
}
pub(crate) use decode;