pub enum Either<A, B> {
A(A),
B(B),
}
Variants§
Trait Implementations§
Source§impl<A, B> Wal for Either<A, B>
impl<A, B> Wal for Either<A, B>
Source§fn begin_read_txn(&mut self) -> Result<bool>
fn begin_read_txn(&mut self) -> Result<bool>
start a read transaction. Returns whether the in-memory page cache should be invalidated.
fn end_read_txn(&mut self)
Source§fn find_frame(&mut self, page_no: NonZeroU32) -> Result<Option<NonZeroU32>>
fn find_frame(&mut self, page_no: NonZeroU32) -> Result<Option<NonZeroU32>>
locate the frame containing page
page_no
Source§fn read_frame(&mut self, frame_no: NonZeroU32, buffer: &mut [u8]) -> Result<()>
fn read_frame(&mut self, frame_no: NonZeroU32, buffer: &mut [u8]) -> Result<()>
reads frame
frame_no
into buffer.Source§fn read_frame_raw(
&mut self,
frame_no: NonZeroU32,
buffer: &mut [u8],
) -> Result<()>
fn read_frame_raw( &mut self, frame_no: NonZeroU32, buffer: &mut [u8], ) -> Result<()>
reads frame
frame_no
including its frame header into buffer.fn db_size(&self) -> u32
fn begin_write_txn(&mut self) -> Result<()>
fn end_write_txn(&mut self) -> Result<()>
fn undo<U: UndoHandler>(&mut self, handler: Option<&mut U>) -> Result<()>
fn savepoint(&mut self, rollback_data: &mut [u32])
fn savepoint_undo(&mut self, rollback_data: &mut [u32]) -> Result<()>
fn frame_count(&self, locked: i32) -> Result<u32>
Source§fn insert_frames(
&mut self,
page_size: c_int,
page_headers: &mut PageHeaders,
size_after: u32,
is_commit: bool,
sync_flags: c_int,
) -> Result<usize>
fn insert_frames( &mut self, page_size: c_int, page_headers: &mut PageHeaders, size_after: u32, is_commit: bool, sync_flags: c_int, ) -> Result<usize>
Insert frames in the wal. On commit, returns the number of inserted frames for that
transaction, or 0 for non-commit calls.
Source§fn checkpoint(
&mut self,
db: &mut Sqlite3Db,
mode: CheckpointMode,
busy_handler: Option<&mut dyn BusyHandler>,
sync_flags: u32,
buf: &mut [u8],
checkpoint_cb: Option<&mut dyn CheckpointCallback>,
in_wal: Option<&mut i32>,
backfilled: Option<&mut i32>,
) -> Result<()>
fn checkpoint( &mut self, db: &mut Sqlite3Db, mode: CheckpointMode, busy_handler: Option<&mut dyn BusyHandler>, sync_flags: u32, buf: &mut [u8], checkpoint_cb: Option<&mut dyn CheckpointCallback>, in_wal: Option<&mut i32>, backfilled: Option<&mut i32>, ) -> Result<()>
Returns the number of frames in the log and the number of checkpointed frames in the WAL.
fn exclusive_mode(&mut self, op: c_int) -> Result<()>
fn uses_heap_memory(&self) -> bool
fn set_db(&mut self, db: &mut Sqlite3Db)
Source§fn callback(&self) -> i32
fn callback(&self) -> i32
Return the value to pass to a sqlite3_wal_hook callback, the
number of frames in the WAL at the point of the last commit since
sqlite3WalCallback() was called. If no commits have occurred since
the last call, then return 0.
fn frames_in_wal(&self) -> u32
Source§impl<A, B> WalManager for Either<A, B>where
A: WalManager,
B: WalManager,
impl<A, B> WalManager for Either<A, B>where
A: WalManager,
B: WalManager,
type Wal = Either<<A as WalManager>::Wal, <B as WalManager>::Wal>
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,
fn wrap<U>(self, wrapper: U) -> WalWrapper<U, Self>
Auto Trait Implementations§
impl<A, B> Freeze for Either<A, B>
impl<A, B> RefUnwindSafe for Either<A, B>where
A: RefUnwindSafe,
B: RefUnwindSafe,
impl<A, B> Send for Either<A, B>
impl<A, B> Sync for Either<A, B>
impl<A, B> Unpin for Either<A, B>
impl<A, B> UnwindSafe for Either<A, B>where
A: UnwindSafe,
B: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more