sqlite_wasm_rs/
lib.rs

1#![doc = include_str!("../README.md")]
2#![no_std]
3#![cfg_attr(target_feature = "atomics", feature(stdarch_wasm_atomic_wait))]
4#![allow(clippy::missing_safety_doc)]
5#![allow(non_upper_case_globals)]
6#![allow(non_camel_case_types)]
7#![allow(non_snake_case)]
8
9extern crate alloc;
10
11mod shim;
12#[rustfmt::skip]
13#[allow(clippy::type_complexity)]
14mod bindings;
15
16/// Low-level utilities, traits, and macros for implementing custom SQLite Virtual File Systems (VFS)
17pub mod utils {
18    #[doc(inline)]
19    pub use rsqlite_vfs::{
20        bail, check_db_and_page_size, check_import_db, check_option, check_result, random_name,
21        register_vfs, registered_vfs, ImportDbError, MemChunksFile, OsCallback, RegisterVfsError,
22        SQLiteIoMethods, SQLiteVfs, SQLiteVfsFile, VfsAppData, VfsError, VfsFile, VfsResult,
23        VfsStore, SQLITE3_HEADER,
24    };
25
26    pub use rsqlite_vfs::ffi;
27
28    #[doc(hidden)]
29    pub use rsqlite_vfs::test_suite;
30}
31
32#[doc(inline)]
33pub use self::utils::{bail, check_option, check_result};
34
35/// Raw C-style bindings to the underlying `libsqlite3` library.
36pub use bindings::*;
37
38/// Wasm platform implementation
39pub use self::shim::WasmOsCallback;
40/// In-memory VFS implementation.
41pub use rsqlite_vfs::memvfs::{MemVfsError, MemVfsUtil};