#![deny(deprecated)]
pub mod driver;
pub mod protocol;
pub mod types;
pub use driver::explain;
#[cfg(all(feature = "enterprise-gssapi", target_os = "linux"))]
pub use driver::gss::{
LinuxKrb5PreflightReport, LinuxKrb5ProviderConfig, linux_krb5_preflight,
linux_krb5_token_provider,
};
pub use driver::{
AstPipelineMode, AuthSettings, AutoCountPath, AutoCountPlan, ConnectOptions,
EnterpriseAuthMechanism, GssEncMode, GssTokenProvider, GssTokenProviderEx, GssTokenRequest,
IdentifySystem, Notification, PgConnection, PgDriver, PgDriverBuilder, PgError, PgPool,
PgResult, PgRow, PgServerError, PoolConfig, PoolStats, PooledConnection, PreparedAstQuery,
QailRow, QueryResult, ReplicationKeepalive, ReplicationOption, ReplicationSlotInfo,
ReplicationStreamMessage, ReplicationStreamStart, ReplicationXLogData, ResultFormat,
ScopedPoolFuture, ScramChannelBindingMode, TlsConfig, TlsMode, scope, spawn_pool_maintenance,
};
pub use protocol::PgEncoder;
pub use types::{
Cidr, Date, FromPg, Inet, Json, MacAddr, Numeric, Time, Timestamp, ToPg, TypeError, Uuid,
};
pub fn rls_sql_with_timeout(ctx: &qail_core::rls::RlsContext, timeout_ms: u32) -> String {
driver::rls::context_to_sql_with_timeout(ctx, timeout_ms)
}
pub fn rls_sql_with_timeouts(
ctx: &qail_core::rls::RlsContext,
statement_timeout_ms: u32,
lock_timeout_ms: u32,
) -> String {
driver::rls::context_to_sql_with_timeouts(ctx, statement_timeout_ms, lock_timeout_ms)
}