use crate::error::C3p0Error;
pub trait C3p0Pool: Clone {
type CONN: Connection;
fn connection(&self) -> Result<Self::CONN, C3p0Error>;
fn transaction<T, F: FnOnce(&Self::CONN) -> Result<T, Box<std::error::Error>>>(
&self,
tx: F,
) -> Result<T, C3p0Error>;
}
pub trait Connection {
fn batch_execute(&self, sql: &str) -> Result<(), C3p0Error>;
}