derive_sql/proxy/mysql/
conn.rs

1use super::*;
2
3pub struct Conn<C>
4where C: ::mysql::prelude::Queryable
5{
6  conn: C,
7}
8
9impl<C> std::convert::From<C> for Conn<C>
10where C: ::mysql::prelude::Queryable
11{
12  fn from(conn: C) -> Self { Conn { conn } }
13}
14
15impl<C> MysqlTrait for Conn<C> 
16where C: ::mysql::prelude::Queryable
17{
18  fn query_drop<Q>(&mut self, query: Q) -> DeriveSqlResult<()>
19  where Q: AsRef<str>
20  {
21    Ok(self.conn.query_drop(query)?)
22  }
23
24  fn query_first<T, Q>(&mut self, query: Q) -> DeriveSqlResult<Option<T>>
25  where Q: AsRef<str>,
26        T: ::mysql::prelude::FromRow
27  {
28    Ok(self.conn.query_first(query)?)
29  }
30
31  fn query_map<T, F, Q, U>(&mut self, query: Q, f: F) -> DeriveSqlResult<Vec<U>>
32  where Q: AsRef<str>,
33        T: ::mysql::prelude::FromRow,
34        F: FnMut(T) -> U
35  {
36    Ok(self.conn.query_map(query, f)?)
37  }
38
39  fn exec_drop<Q, P>(&mut self, query: Q, params: P) -> DeriveSqlResult<()>
40  where Q: AsRef<str>,
41        P: Into<::mysql::Params>
42  {
43    Ok(self.conn.exec_drop(query, params)?)
44  }
45}
46