Skip to main content

VectorFieldGuardMaintenance

Struct VectorFieldGuardMaintenance 

Source
pub struct VectorFieldGuardMaintenance { /* private fields */ }
Expand description

A finite key-only discovery pass. Each step revisits one current field and conditionally deletes its reference marker. Retained readers keep the old records; ordinary document writers retain their lifetime observation and mergeable markers. Uncertain commits keep the current key and original attempt until explicit completion.

Implementations§

Source§

impl VectorFieldGuardMaintenance

Source

pub fn start( store: &VersionedKeyValueStore, control: &StorageReadControl, ) -> StorageBackendResult<Self>

Source

pub fn step(&mut self) -> StorageBackendResult<Option<bool>>

None completes discovery. Some(true) deletes the current empty field’s live marker; Some(false) leaves a live field, a tombstone, or a racing writer for later maintenance.

Source

pub fn commit_pending(&mut self) -> StorageBackendResult<()>

Resolve the retained original commit; the next step advances the cursor without reevaluating the completed field.

Source

pub fn rollback_pending(&self) -> StorageBackendResult<()>

Source

pub fn run( store: &VersionedKeyValueStore, control: &StorageReadControl, ) -> StorageBackendResult<()>

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> Same for T

Source§

type Output = T

Should always be Self
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.