@@ -1098,6 +1098,16 @@ impl Connection {
10981098 self . conn . borrow_mut ( ) . prepare_cached ( query, self )
10991099 }
11001100
1101+ /// Returns the isolation level which will be used for future transactions.
1102+ ///
1103+ /// This is a simple wrapper around `SHOW TRANSACTION ISOLATION LEVEL`.
1104+ pub fn transaction_isolation ( & self ) -> Result < IsolationLevel > {
1105+ let mut conn = self . conn . borrow_mut ( ) ;
1106+ check_desync ! ( conn) ;
1107+ let result = try!( conn. quick_query ( "SHOW TRANSACTION ISOLATION LEVEL" ) ) ;
1108+ IsolationLevel :: parse ( result[ 0 ] [ 0 ] . as_ref ( ) . unwrap ( ) )
1109+ }
1110+
11011111 /// Sets the isolation level which will be used for future transactions.
11021112 ///
11031113 /// This is a simple wrapper around `SET TRANSACTION ISOLATION LEVEL ...`.
@@ -1109,16 +1119,6 @@ impl Connection {
11091119 self . batch_execute ( level. to_set_query ( ) )
11101120 }
11111121
1112- /// Returns the isolation level which will be used for future transactions.
1113- ///
1114- /// This is a simple wrapper around `SHOW TRANSACTION ISOLATION LEVEL`.
1115- pub fn transaction_isolation ( & self ) -> Result < IsolationLevel > {
1116- let mut conn = self . conn . borrow_mut ( ) ;
1117- check_desync ! ( conn) ;
1118- let result = try!( conn. quick_query ( "SHOW TRANSACTION ISOLATION LEVEL" ) ) ;
1119- IsolationLevel :: parse ( result[ 0 ] [ 0 ] . as_ref ( ) . unwrap ( ) )
1120- }
1121-
11221122 /// Execute a sequence of SQL statements.
11231123 ///
11241124 /// Statements should be separated by `;` characters. If an error occurs,
@@ -1388,18 +1388,18 @@ fn read_rows(conn: &mut InnerConnection, buf: &mut VecDeque<Vec<Option<Vec<u8>>>
13881388
13891389/// A trait allowing abstraction over connections and transactions
13901390pub trait GenericConnection {
1391- /// Like `Connection::prepare`.
1392- fn prepare < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > ;
1393-
1394- /// Like `Connection::prepare_cached`.
1395- fn prepare_cached < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > ;
1396-
13971391 /// Like `Connection::execute`.
13981392 fn execute ( & self , query : & str , params : & [ & ToSql ] ) -> Result < u64 > ;
13991393
14001394 /// Like `Connection::query`.
14011395 fn query < ' a > ( & ' a self , query : & str , params : & [ & ToSql ] ) -> Result < Rows < ' a > > ;
14021396
1397+ /// Like `Connection::prepare`.
1398+ fn prepare < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > ;
1399+
1400+ /// Like `Connection::prepare_cached`.
1401+ fn prepare_cached < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > ;
1402+
14031403 /// Like `Connection::transaction`.
14041404 fn transaction < ' a > ( & ' a self ) -> Result < Transaction < ' a > > ;
14051405
@@ -1411,14 +1411,6 @@ pub trait GenericConnection {
14111411}
14121412
14131413impl GenericConnection for Connection {
1414- fn prepare < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > {
1415- self . prepare ( query)
1416- }
1417-
1418- fn prepare_cached < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > {
1419- self . prepare_cached ( query)
1420- }
1421-
14221414 fn execute ( & self , query : & str , params : & [ & ToSql ] ) -> Result < u64 > {
14231415 self . execute ( query, params)
14241416 }
@@ -1427,6 +1419,14 @@ impl GenericConnection for Connection {
14271419 self . query ( query, params)
14281420 }
14291421
1422+ fn prepare < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > {
1423+ self . prepare ( query)
1424+ }
1425+
1426+ fn prepare_cached < ' a > ( & ' a self , query : & str ) -> Result < Statement < ' a > > {
1427+ self . prepare_cached ( query)
1428+ }
1429+
14301430 fn transaction < ' a > ( & ' a self ) -> Result < Transaction < ' a > > {
14311431 self . transaction ( )
14321432 }
@@ -1441,14 +1441,6 @@ impl GenericConnection for Connection {
14411441}
14421442
14431443impl < ' a > GenericConnection for Transaction < ' a > {
1444- fn prepare < ' b > ( & ' b self , query : & str ) -> Result < Statement < ' b > > {
1445- self . prepare ( query)
1446- }
1447-
1448- fn prepare_cached < ' b > ( & ' b self , query : & str ) -> Result < Statement < ' b > > {
1449- self . prepare_cached ( query)
1450- }
1451-
14521444 fn execute ( & self , query : & str , params : & [ & ToSql ] ) -> Result < u64 > {
14531445 self . execute ( query, params)
14541446 }
@@ -1457,6 +1449,14 @@ impl<'a> GenericConnection for Transaction<'a> {
14571449 self . query ( query, params)
14581450 }
14591451
1452+ fn prepare < ' b > ( & ' b self , query : & str ) -> Result < Statement < ' b > > {
1453+ self . prepare ( query)
1454+ }
1455+
1456+ fn prepare_cached < ' b > ( & ' b self , query : & str ) -> Result < Statement < ' b > > {
1457+ self . prepare_cached ( query)
1458+ }
1459+
14601460 fn transaction < ' b > ( & ' b self ) -> Result < Transaction < ' b > > {
14611461 self . transaction ( )
14621462 }
0 commit comments