pub enum Boundary {
SchemaChange(StoreVersion),
Reset {
entry: Slot,
snapshot: SnapshotId,
},
}Expand description
A checked raise/reset and the snapshot named by that entry. Its selection is derived from kept entries, independently of whether coverage has been read.
Variants§
SchemaChange(StoreVersion)
A breaking schema raise.
Reset
A reset of the named snapshot’s audience.
Fields
§
snapshot: SnapshotIdIts snapshot, including the audience.
Implementations§
Source§impl Boundary
impl Boundary
Sourcepub fn snapshot(&self) -> &SnapshotId
pub fn snapshot(&self) -> &SnapshotId
The immutable snapshot named by this boundary.
Sourcepub fn schema_in_place(
state: &StoreState,
version: u32,
snapshot: &SnapshotId,
) -> bool
pub fn schema_in_place( state: &StoreState, version: u32, snapshot: &SnapshotId, ) -> bool
The no-op rule for a raise: one that doesn’t go past the version its audience has reached, a circle’s base included, changes nothing.
Sourcepub fn reset_in_place(state: &StoreState, snapshot: &SnapshotId) -> bool
pub fn reset_in_place(state: &StoreState, snapshot: &SnapshotId) -> bool
Repeating the current reset does not introduce a new boundary.
Sourcepub fn already_in_place(&self, state: &StoreState) -> bool
pub fn already_in_place(&self, state: &StoreState) -> bool
Whether applying this checked boundary leaves the applied state unchanged.
Sourcepub fn apply(&self, state: &mut StoreState)
pub fn apply(&self, state: &mut StoreState)
Realize a non-no-op boundary after the preceding prefix authorizes it.
Trait Implementations§
impl Eq for Boundary
impl StructuralPartialEq for Boundary
Auto Trait Implementations§
impl Freeze for Boundary
impl RefUnwindSafe for Boundary
impl Send for Boundary
impl Sync for Boundary
impl Unpin for Boundary
impl UnsafeUnpin for Boundary
impl UnwindSafe for Boundary
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.