pub(crate) use sqlx_core::driver_prelude::*;
use sqlx_core::{
impl_acquire, impl_column_index_for_row, impl_column_index_for_statement,
impl_encode_for_option, impl_into_arguments_for_arguments,
};
#[cfg(feature = "any")]
pub mod any;
mod arguments;
mod column;
mod connection;
mod database;
mod error;
mod options;
mod query_result;
mod row;
mod statement;
mod transaction;
mod type_checking;
mod type_info;
pub mod types;
mod value;
#[cfg(feature = "migrate")]
mod migrate;
#[cfg(feature = "migrate")]
mod testing;
pub use arguments::FirebirdArguments;
pub use column::FirebirdColumn;
pub use connection::FirebirdConnection;
pub use database::Firebird;
pub use error::FirebirdDatabaseError;
pub use options::FirebirdConnectOptions;
pub use query_result::FirebirdQueryResult;
pub use row::FirebirdRow;
pub use statement::FirebirdStatement;
pub use transaction::FirebirdTransactionManager;
pub use type_info::FirebirdTypeInfo;
pub use value::{FirebirdValue, FirebirdValueFormat, FirebirdValueRef};
pub type FirebirdPool = crate::pool::Pool<Firebird>;
pub type FirebirdPoolOptions = crate::pool::PoolOptions<Firebird>;
pub trait FirebirdExecutor<'c>: crate::executor::Executor<'c, Database = Firebird> {}
impl<'c, T: crate::executor::Executor<'c, Database = Firebird>> FirebirdExecutor<'c> for T {}
pub type FirebirdTransaction<'c> = sqlx_core::transaction::Transaction<'c, Firebird>;
impl_into_arguments_for_arguments!(FirebirdArguments);
impl_acquire!(Firebird, FirebirdConnection);
impl_column_index_for_row!(FirebirdRow);
impl_column_index_for_statement!(FirebirdStatement);
impl_encode_for_option!(Firebird);