#[non_exhaustive]pub enum ReplayVerdict {
Fresh,
Duplicate {
prior_response: Option<Value>,
in_flight: bool,
},
Conflict,
}Expand description
What a ReplayGuard says about a document offered for execution.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Fresh
This id has not been accepted before. The caller may execute, and
MUST call ReplayGuard::record_response afterwards if it wants a
later duplicate answered with the result.
Duplicate
This id was already accepted, under a document with the same
digest — a §8.4 retry, or a replay. The caller MUST NOT execute
again.
prior_response is the response the first execution produced, where
the guard retained one. None means either that the specification
defines no success response (§4.4.1’s fire-and-forget case, where
silence is the correct disposition) or that the first execution has not
finished — the two are distinguished by
in_flight.
Fields
Conflict
This id was already accepted, under a document with a different
digest. SPEC §7.2 item 11 requires idConflict, and requires that the
document MUST NOT be treated as a retry of the original.
Trait Implementations§
Source§impl Clone for ReplayVerdict
impl Clone for ReplayVerdict
Source§fn clone(&self) -> ReplayVerdict
fn clone(&self) -> ReplayVerdict
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more