Struct rusqlite::LoadExtensionGuard
source · [−]pub struct LoadExtensionGuard<'conn> { /* private fields */ }
This is supported on crate feature
load_extension
only.Expand description
RAII guard temporarily enabling SQLite extensions to be loaded.
Example
fn load_my_extension(conn: &Connection) -> Result<()> {
unsafe {
let _guard = LoadExtensionGuard::new(conn)?;
conn.load_extension("trusted/sqlite/extension", None)
}
}
Implementations
sourceimpl LoadExtensionGuard<'_>
impl LoadExtensionGuard<'_>
sourcepub unsafe fn new(conn: &Connection) -> Result<LoadExtensionGuard<'_>>
pub unsafe fn new(conn: &Connection) -> Result<LoadExtensionGuard<'_>>
Attempt to enable loading extensions. Loading extensions will be disabled when this guard goes out of scope. Cannot be meaningfully nested.
Safety
You must not run untrusted queries while extension loading is enabled.
See the safety comment on Connection::load_extension_enable
for more
details.
Trait Implementations
Auto Trait Implementations
impl<'conn> !RefUnwindSafe for LoadExtensionGuard<'conn>
impl<'conn> !Send for LoadExtensionGuard<'conn>
impl<'conn> !Sync for LoadExtensionGuard<'conn>
impl<'conn> Unpin for LoadExtensionGuard<'conn>
impl<'conn> !UnwindSafe for LoadExtensionGuard<'conn>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more