sqlite_vec/
lib.rs

1#[link(name = "sqlite_vec0")]
2extern "C" {
3    pub fn sqlite3_vec_init();
4}
5
6#[cfg(test)]
7mod tests {
8    use super::*;
9
10    use rusqlite::{ffi::sqlite3_auto_extension, Connection};
11
12    #[test]
13    fn test_rusqlite_auto_extension() {
14        unsafe {
15            sqlite3_auto_extension(Some(std::mem::transmute(sqlite3_vec_init as *const ())));
16        }
17
18        let conn = Connection::open_in_memory().unwrap();
19
20        let result: String = conn
21            .query_row("select vec_version()", [], |x| x.get(0))
22            .unwrap();
23
24        assert!(result.starts_with("v"));
25    }
26}