Skip to main content

OverflowRef

Struct OverflowRef 

Source
pub struct OverflowRef {
    pub rowid: i64,
    pub total_body_len: u64,
    pub first_overflow_page: u32,
}
Expand description

On-page marker that stands in for a cell whose body lives in an overflow chain. Rowid is inlined so the page’s binary search over slots still works without chasing the chain.

Fields§

§rowid: i64§total_body_len: u64

Exact byte count that read_overflow_chain must produce; the caller then feeds those bytes to LocalCellBody::decode.

§first_overflow_page: u32

First page of the Overflow-type chain carrying the body.

Implementations§

Source§

impl OverflowRef

Source

pub fn encode(&self) -> Vec<u8>

Serializes the reference using the shared [cell_length varint | kind_tag | body] prefix; kind_tag is always KIND_OVERFLOW for this type.

Source

pub fn decode(buf: &[u8], pos: usize) -> Result<(OverflowRef, usize)>

Trait Implementations§

Source§

impl Clone for OverflowRef

Source§

fn clone(&self) -> OverflowRef

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 Debug for OverflowRef

Source§

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

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

impl PartialEq for OverflowRef

Source§

fn eq(&self, other: &OverflowRef) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for OverflowRef

Source§

impl StructuralPartialEq for OverflowRef

Auto Trait Implementations§

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, 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.