pub struct HighWaterMarks { /* private fields */ }Expand description
Persisted high-water marks, one per release line, stored under the varve root (NOT inside the core — the core holds evidence, this is client state).
Implementations§
Source§impl HighWaterMarks
impl HighWaterMarks
Sourcepub fn load(root: &Path) -> Result<Self, RollbackError>
pub fn load(root: &Path) -> Result<Self, RollbackError>
Load the marks stored under root (missing file = first contact).
Sourcepub fn check(&self, manifest: &LayerManifest) -> RollbackVerdict
pub fn check(&self, manifest: &LayerManifest) -> RollbackVerdict
Check a manifest against the marks. Accept does NOT advance the
mark — call Self::advance after the layer is fully verified and
laid down, so a failed install cannot burn the mark.
Sourcepub fn advance(&mut self, manifest: &LayerManifest) -> Result<(), RollbackError>
pub fn advance(&mut self, manifest: &LayerManifest) -> Result<(), RollbackError>
Record acceptance of a manifest: raise the line’s mark to the manifest’s counter (never lowers) and persist.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HighWaterMarks
impl RefUnwindSafe for HighWaterMarks
impl Send for HighWaterMarks
impl Sync for HighWaterMarks
impl Unpin for HighWaterMarks
impl UnsafeUnpin for HighWaterMarks
impl UnwindSafe for HighWaterMarks
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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