pub enum PromiseTransition {
Store(Resolution),
AlreadyResolved(Resolution),
UnknownOrRevoked,
Unchanged,
}Expand description
Pure decision returned for a proposed terminal transition.
Variants§
Store(Resolution)
Persist this terminal with a first-writer-wins compare-and-swap.
AlreadyResolved(Resolution)
A prior terminal remains authoritative.
UnknownOrRevoked
The key must use the common non-oracular unknown/revoked result.
Unchanged
The operation intentionally leaves this promise unchanged.
Implementations§
Source§impl PromiseTransition
impl PromiseTransition
Sourcepub fn resolve_outcome(self) -> Option<ResolveOutcome>
pub fn resolve_outcome(self) -> Option<ResolveOutcome>
Convert a committed resolution decision to the public resolver result.
Unchanged is not a resolve result; it is used only by cancel sweeps.
Trait Implementations§
Source§impl Clone for PromiseTransition
impl Clone for PromiseTransition
Source§fn clone(&self) -> PromiseTransition
fn clone(&self) -> PromiseTransition
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PromiseTransition
impl Debug for PromiseTransition
impl Eq for PromiseTransition
Source§impl PartialEq for PromiseTransition
impl PartialEq for PromiseTransition
impl StructuralPartialEq for PromiseTransition
Auto Trait Implementations§
impl Freeze for PromiseTransition
impl RefUnwindSafe for PromiseTransition
impl Send for PromiseTransition
impl Sync for PromiseTransition
impl Unpin for PromiseTransition
impl UnsafeUnpin for PromiseTransition
impl UnwindSafe for PromiseTransition
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.