mirror of
				https://github.com/isar/rusqlite.git
				synced 2025-10-31 22:08:55 +08:00 
			
		
		
		
	Make StatementCache hold RawStatements instead of Statements.
This commit is contained in:
		
							
								
								
									
										19
									
								
								src/lib.rs
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								src/lib.rs
									
									
									
									
									
								
							| @@ -901,17 +901,6 @@ impl<'conn> Statement<'conn> { | ||||
|         Ok(()) | ||||
|     } | ||||
|  | ||||
|     #[cfg(feature = "cache")] | ||||
|     fn clear_bindings(&mut self) { | ||||
|         self.stmt.clear_bindings(); | ||||
|     } | ||||
|  | ||||
|     #[cfg(feature = "cache")] | ||||
|     fn eq(&self, sql: &str) -> bool { | ||||
|         let c_slice = self.stmt.sql().to_bytes(); | ||||
|         sql.as_bytes().eq(c_slice) | ||||
|     } | ||||
|  | ||||
|     fn finalize_(&mut self) -> Result<()> { | ||||
|         let mut stmt = RawStatement::new(ptr::null_mut()); | ||||
|         mem::swap(&mut stmt, &mut self.stmt); | ||||
| @@ -919,6 +908,14 @@ impl<'conn> Statement<'conn> { | ||||
|     } | ||||
| } | ||||
|  | ||||
| impl<'conn> Into<RawStatement> for Statement<'conn> { | ||||
|     fn into(mut self) -> RawStatement { | ||||
|         let mut stmt = RawStatement::new(ptr::null_mut()); | ||||
|         mem::swap(&mut stmt, &mut self.stmt); | ||||
|         stmt | ||||
|     } | ||||
| } | ||||
|  | ||||
| impl<'conn> fmt::Debug for Statement<'conn> { | ||||
|     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { | ||||
|         let sql = str::from_utf8(self.stmt.sql().to_bytes()); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user