Skip to main content

WalScanner

Struct WalScanner 

pub struct WalScanner { /* private fields */ }
Expand description

Follows the chain through one segment from a growing prefix of its bytes, like crate::segment::SegmentScanner.

Implementations§

§

impl WalScanner

pub fn start(bytes: &[u8], complete: bool) -> Result<Option<Self>, WalError>

Starts at the segment’s base. expect is the chain position the previous segment ended at (None for the first segment read, which must start at or before the position recovery needs). Ok(None) for a never-activated segment.

pub fn header(&self) -> &WalHeader

pub fn advance( &mut self, bytes: &[u8], complete: bool, segment_len: usize, visit: &mut dyn FnMut(&BatchView<'_>), ) -> Progress

Continues over bytes, the segment’s first bytes.len() bytes; segment_len is the file’s length (batches never extend past it). Accepted batches are visited once each, in order.

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.