Adding in generic for the query function of genericconnection

This commit is contained in:
Colin Maxfield 2019-12-28 16:32:01 -05:00
parent e8aef6579e
commit 793e83a4ef
3 changed files with 12 additions and 4 deletions

View File

@ -458,7 +458,10 @@ impl GenericConnection for Client {
fn execute(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result<u64, Error> {
self.execute(query, params)
}
fn query(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result<Vec<Row>, Error> {
fn query<T>(&mut self, query: &T, params: &[&(dyn ToSql + Sync)]) -> Result<Vec<Row>, Error>
where
T: ?Sized + ToStatement,
{
self.query(query, params)
}
fn prepare(&mut self, query: &str) -> Result<Statement, Error> {

View File

@ -1,4 +1,4 @@
use crate::{Statement, Transaction};
use crate::{Statement, ToStatement, Transaction};
use tokio_postgres::types::ToSql;
use tokio_postgres::{Error, Row};
@ -8,7 +8,9 @@ pub trait GenericConnection {
fn execute(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result<u64, Error>;
/// Like `Client::query`.
fn query(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result<Vec<Row>, Error>;
fn query<T>(&mut self, query: &T, params: &[&(dyn ToSql + Sync)]) -> Result<Vec<Row>, Error>
where
T: ?Sized + ToStatement;
/// Like `Client::prepare`.
fn prepare(&mut self, query: &str) -> Result<Statement, Error>;

View File

@ -184,7 +184,10 @@ impl<'a> GenericConnection for Transaction<'a> {
fn execute(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result<u64, Error> {
self.execute(query, params)
}
fn query(&mut self, query: &str, params: &[&(dyn ToSql + Sync)]) -> Result<Vec<Row>, Error> {
fn query<T>(&mut self, query: &T, params: &[&(dyn ToSql + Sync)]) -> Result<Vec<Row>, Error>
where
T: ?Sized + ToStatement,
{
self.query(query, params)
}
fn prepare(&mut self, query: &str) -> Result<Statement, Error> {