Enum Either3

Source
pub enum Either3<A, B, C> {
    A(A),
    B(B),
    C(C),
}

Variants§

§

A(A)

§

B(B)

§

C(C)

Trait Implementations§

Source§

impl<A: Clone, B: Clone, C: Clone> Clone for Either3<A, B, C>

Source§

fn clone(&self) -> Either3<A, B, C>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<A: Debug, B: Debug, C: Debug> Debug for Either3<A, B, C>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<A, B, C> Wal for Either3<A, B, C>
where A: Wal, B: Wal, C: Wal,

Source§

fn limit(&mut self, size: i64)

Set the WAL limit in pages
Source§

fn begin_read_txn(&mut self) -> Result<bool>

start a read transaction. Returns whether the in-memory page cache should be invalidated.
Source§

fn end_read_txn(&mut self)

Source§

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<()>

reads frame frame_no into buffer.
Source§

fn read_frame_raw( &mut self, frame_no: NonZeroU32, buffer: &mut [u8], ) -> Result<()>

reads frame frame_no including its frame header into buffer.
Source§

fn db_size(&self) -> u32

Source§

fn begin_write_txn(&mut self) -> Result<()>

Source§

fn end_write_txn(&mut self) -> Result<()>

Source§

fn undo<U: UndoHandler>(&mut self, handler: Option<&mut U>) -> Result<()>

Source§

fn savepoint(&mut self, rollback_data: &mut [u32])

Source§

fn savepoint_undo(&mut self, rollback_data: &mut [u32]) -> Result<()>

Source§

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>

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<()>

Returns the number of frames in the log and the number of checkpointed frames in the WAL.
Source§

fn exclusive_mode(&mut self, op: c_int) -> Result<()>

Source§

fn uses_heap_memory(&self) -> bool

Source§

fn set_db(&mut self, db: &mut Sqlite3Db)

Source§

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.
Source§

fn frames_in_wal(&self) -> u32

Source§

impl<A, B, C> WalManager for Either3<A, B, C>
where A: WalManager, B: WalManager, C: WalManager,

Source§

type Wal = Either3<<A as WalManager>::Wal, <B as WalManager>::Wal, <C as WalManager>::Wal>

Source§

fn use_shared_memory(&self) -> bool

Source§

fn open( &self, vfs: &mut Vfs, file: &mut Sqlite3File, no_shm_mode: c_int, max_log_size: i64, db_path: &CStr, ) -> Result<Self::Wal>

Source§

fn close( &self, wal: &mut Self::Wal, db: &mut Sqlite3Db, sync_flags: c_int, scratch: Option<&mut [u8]>, ) -> Result<()>

Source§

fn destroy_log(&self, vfs: &mut Vfs, db_path: &CStr) -> Result<()>

Source§

fn log_exists(&self, vfs: &mut Vfs, db_path: &CStr) -> Result<bool>

Source§

fn destroy(self)
where Self: Sized,

Source§

fn wrap<U>(self, wrapper: U) -> WalWrapper<U, Self>
where U: WrapWal<Self::Wal> + Clone, Self: Sized,

Auto Trait Implementations§

§

impl<A, B, C> Freeze for Either3<A, B, C>
where A: Freeze, B: Freeze, C: Freeze,

§

impl<A, B, C> RefUnwindSafe for Either3<A, B, C>

§

impl<A, B, C> Send for Either3<A, B, C>
where A: Send, B: Send, C: Send,

§

impl<A, B, C> Sync for Either3<A, B, C>
where A: Sync, B: Sync, C: Sync,

§

impl<A, B, C> Unpin for Either3<A, B, C>
where A: Unpin, B: Unpin, C: Unpin,

§

impl<A, B, C> UnwindSafe for Either3<A, B, C>
where A: UnwindSafe, B: UnwindSafe, C: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more