pub enum Step {
Checkout,
Barrier,
Sync,
RecoverStaged,
Rescope(Option<Vec<String>>),
}Variants§
Checkout
Barrier
Sync
RecoverStaged
Rescope(Option<Vec<String>>)
The narrow/widen verb. None is the whole tree; an empty
argument list therefore cannot mean “narrow to nothing”.
Implementations§
Source§impl Step
impl Step
Sourcepub fn installs_nothing_in_the_bucket(&self) -> bool
pub fn installs_nothing_in_the_bucket(&self) -> bool
Does this verb need the publish fence?
The epoch cell arbitrates who may INSTALL a manifest. A verb
that installs none does not belong in that queue, and putting it
there does not make it safer — see read_only_then for what it
actually cost.
checkout is the only false today. rescope reads the bucket
and writes nothing to it either, but it rewrites the held set
and leaves a replayable intent behind, so it stays fenced until
someone has walked that crash matrix with two of them running;
sync, barrier and recover-staged all publish.
Auto Trait Implementations§
impl Freeze for Step
impl RefUnwindSafe for Step
impl Send for Step
impl Sync for Step
impl Unpin for Step
impl UnsafeUnpin for Step
impl UnwindSafe for Step
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