pub enum VerificationOutcome {
Verified,
CommittedUnverified {
reason: String,
},
Failed {
reason: String,
},
}Expand description
What is actually known about an action’s effect after execution.
verify previously returned bool, computed as receipt.status == Committed. That
collapsed two different claims: that the runtime accepted the action, and that the
intended effect was observed. A committed action whose effect did not occur was reported
as completed, and the reference graph labelled the node and its output “verification”.
Variants§
Verified
The declared postcondition was observed to hold, with evidence bound to it.
CommittedUnverified
The runtime committed the action, but no independent postcondition evidence is available — either none was declared, or the receipt carried none.
Failed
The action did not commit, or the evidence contradicts the postcondition.
Implementations§
Source§impl VerificationOutcome
impl VerificationOutcome
Sourcepub fn is_verified(&self) -> bool
pub fn is_verified(&self) -> bool
Whether the postcondition was independently observed.
Deliberately false for VerificationOutcome::CommittedUnverified: a caller asking
“was this verified?” must not be told yes because the action merely committed.
Sourcepub fn is_committed(&self) -> bool
pub fn is_committed(&self) -> bool
Whether the action was performed, whether or not its effect was verified.
Trait Implementations§
Source§impl Clone for VerificationOutcome
impl Clone for VerificationOutcome
Source§fn clone(&self) -> VerificationOutcome
fn clone(&self) -> VerificationOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for VerificationOutcome
impl Debug for VerificationOutcome
impl Eq for VerificationOutcome
Source§impl PartialEq for VerificationOutcome
impl PartialEq for VerificationOutcome
impl StructuralPartialEq for VerificationOutcome
Auto Trait Implementations§
impl Freeze for VerificationOutcome
impl RefUnwindSafe for VerificationOutcome
impl Send for VerificationOutcome
impl Sync for VerificationOutcome
impl Unpin for VerificationOutcome
impl UnsafeUnpin for VerificationOutcome
impl UnwindSafe for VerificationOutcome
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
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
key and return true if they are equal.