@@ -1098,6 +1098,16 @@ impl Connection {
1098
1098
self . conn . borrow_mut ( ) . prepare_cached ( query, self )
1099
1099
}
1100
1100
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
+
1101
1111
/// Sets the isolation level which will be used for future transactions.
1102
1112
///
1103
1113
/// This is a simple wrapper around `SET TRANSACTION ISOLATION LEVEL ...`.
@@ -1109,16 +1119,6 @@ impl Connection {
1109
1119
self . batch_execute ( level. to_set_query ( ) )
1110
1120
}
1111
1121
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
-
1122
1122
/// Execute a sequence of SQL statements.
1123
1123
///
1124
1124
/// 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>>>
1388
1388
1389
1389
/// A trait allowing abstraction over connections and transactions
1390
1390
pub 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
-
1397
1391
/// Like `Connection::execute`.
1398
1392
fn execute ( & self , query : & str , params : & [ & ToSql ] ) -> Result < u64 > ;
1399
1393
1400
1394
/// Like `Connection::query`.
1401
1395
fn query < ' a > ( & ' a self , query : & str , params : & [ & ToSql ] ) -> Result < Rows < ' a > > ;
1402
1396
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
+
1403
1403
/// Like `Connection::transaction`.
1404
1404
fn transaction < ' a > ( & ' a self ) -> Result < Transaction < ' a > > ;
1405
1405
@@ -1411,14 +1411,6 @@ pub trait GenericConnection {
1411
1411
}
1412
1412
1413
1413
impl 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
-
1422
1414
fn execute ( & self , query : & str , params : & [ & ToSql ] ) -> Result < u64 > {
1423
1415
self . execute ( query, params)
1424
1416
}
@@ -1427,6 +1419,14 @@ impl GenericConnection for Connection {
1427
1419
self . query ( query, params)
1428
1420
}
1429
1421
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
+
1430
1430
fn transaction < ' a > ( & ' a self ) -> Result < Transaction < ' a > > {
1431
1431
self . transaction ( )
1432
1432
}
@@ -1441,14 +1441,6 @@ impl GenericConnection for Connection {
1441
1441
}
1442
1442
1443
1443
impl < ' 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
-
1452
1444
fn execute ( & self , query : & str , params : & [ & ToSql ] ) -> Result < u64 > {
1453
1445
self . execute ( query, params)
1454
1446
}
@@ -1457,6 +1449,14 @@ impl<'a> GenericConnection for Transaction<'a> {
1457
1449
self . query ( query, params)
1458
1450
}
1459
1451
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
+
1460
1460
fn transaction < ' b > ( & ' b self ) -> Result < Transaction < ' b > > {
1461
1461
self . transaction ( )
1462
1462
}
0 commit comments