Trait WalManager
Source pub trait WalManager {
type Wal: Wal;
// Required methods
fn use_shared_memory(&self) -> bool;
fn open(
&self,
vfs: &mut Vfs,
file: &mut Sqlite3File,
no_shm_mode: c_int,
max_log_size: i64,
db_path: &CStr,
) -> Result<Self::Wal>;
fn close(
&self,
wal: &mut Self::Wal,
db: &mut Sqlite3Db,
sync_flags: c_int,
scratch: Option<&mut [u8]>,
) -> Result<()>;
fn destroy_log(&self, vfs: &mut Vfs, db_path: &CStr) -> Result<()>;
fn log_exists(&self, vfs: &mut Vfs, db_path: &CStr) -> Result<bool>;
fn destroy(self)
where Self: Sized;
// Provided method
fn wrap<U>(self, wrapper: U) -> WalWrapper<U, Self>
where U: WrapWal<Self::Wal> + Clone,
Self: Sized { ... }
}