• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //! Ensure loadable_extension.rs works.
2 
3 use rusqlite::{Connection, Result};
4 use std::env::consts::{DLL_PREFIX, DLL_SUFFIX};
5 
main() -> Result<()>6 fn main() -> Result<()> {
7     let db = Connection::open_in_memory()?;
8 
9     unsafe {
10         db.load_extension_enable()?;
11         db.load_extension(
12             format!(
13                 "target/debug/examples/{}loadable_extension{}",
14                 DLL_PREFIX, DLL_SUFFIX
15             ),
16             None,
17         )?;
18         db.load_extension_disable()?;
19     }
20 
21     let str = db.query_row("SELECT rusqlite_test_function()", [], |row| {
22         row.get::<_, String>(0)
23     })?;
24     assert_eq!(&str, "Rusqlite extension loaded correctly!");
25     Ok(())
26 }
27