pub trait SQLiteVfs<IO: SQLiteIoMethods> {
const VERSION: c_int;
// Provided methods
fn vfs(vfs_name: *const c_char) -> sqlite3_vfs { ... }
unsafe extern "C" fn xOpen(
pVfs: *mut sqlite3_vfs,
zName: sqlite3_filename,
pFile: *mut sqlite3_file,
flags: c_int,
pOutFlags: *mut c_int,
) -> c_int { ... }
unsafe extern "C" fn xDelete(
pVfs: *mut sqlite3_vfs,
zName: *const c_char,
_syncDir: c_int,
) -> c_int { ... }
unsafe extern "C" fn xAccess(
pVfs: *mut sqlite3_vfs,
zName: *const c_char,
_flags: c_int,
pResOut: *mut c_int,
) -> c_int { ... }
unsafe extern "C" fn xFullPathname(
_pVfs: *mut sqlite3_vfs,
zName: *const c_char,
nOut: c_int,
zOut: *mut c_char,
) -> c_int { ... }
unsafe extern "C" fn xGetLastError(
_pVfs: *mut sqlite3_vfs,
_nOut: c_int,
_zOut: *mut c_char,
) -> c_int { ... }
}
Expand description
Abstraction of SQLite vfs
Required Associated Constants§
Provided Methods§
fn vfs(vfs_name: *const c_char) -> sqlite3_vfs
unsafe extern "C" fn xOpen( pVfs: *mut sqlite3_vfs, zName: sqlite3_filename, pFile: *mut sqlite3_file, flags: c_int, pOutFlags: *mut c_int, ) -> c_int
unsafe extern "C" fn xDelete( pVfs: *mut sqlite3_vfs, zName: *const c_char, _syncDir: c_int, ) -> c_int
unsafe extern "C" fn xAccess( pVfs: *mut sqlite3_vfs, zName: *const c_char, _flags: c_int, pResOut: *mut c_int, ) -> c_int
unsafe extern "C" fn xFullPathname( _pVfs: *mut sqlite3_vfs, zName: *const c_char, nOut: c_int, zOut: *mut c_char, ) -> c_int
unsafe extern "C" fn xGetLastError( _pVfs: *mut sqlite3_vfs, _nOut: c_int, _zOut: *mut c_char, ) -> c_int
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.