use crate::{Statement, Transaction}; use tokio_postgres::types::ToSql; use tokio_postgres::{Error, Row}; /// A trait allowing abstraction over connections and transactions pub trait GenericConnection { /// Like `Client::execute`. fn execute(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result; /// Like `Client::query`. fn query(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result, Error>; /// Like `Client::prepare`. fn prepare(&mut self, query: &str) -> Result; /// Like `Client::transaction`. fn transaction(&mut self) -> Result, Error>; }