pub enum DropReason {
Stale {
replacement_digest: Option<String>,
},
Gone,
Unknown,
NoDigest,
VerifyUnsupported,
UnknownProvider,
VerifyFailed(String),
}Expand description
Why a held frame was dropped by Host::verify_frames
(docs/context-reuse.md §4).
The first three mirror the provider’s Verdicts; the rest are host-side
reasons a frame could not be revalidated at all. Either way the frame leaves
the composed context — the difference matters only for deciding whether to
re-query it.
Variants§
Stale
The provider answered stale: the frame exists but its content changed.
Carries the provider’s current digest when it offered one.
Gone
The provider answered gone — the frame no longer exists.
Unknown
The provider answered unknown, or returned no verdict for the frame at
all. Silence is not validity.
NoDigest
The frame carries no content_digest, so it cannot be revalidated
(§1, requirement D4).
VerifyUnsupported
The provider does not advertise the verify capability, so the host
falls back to re-querying its frames (§4, requirement V3).
UnknownProvider
No provider with this frame’s provider_id is registered with the host.
VerifyFailed(String)
The verify request itself failed — a transport error or a timeout.
Implementations§
Source§impl DropReason
impl DropReason
Sourcepub fn warrants_requery(&self) -> bool
pub fn warrants_requery(&self) -> bool
Whether re-querying the provider could recover usable content for this
frame. False only for Gone — every other reason means
the host simply doesn’t have a trustworthy copy and should ask again.
Trait Implementations§
Source§impl Clone for DropReason
impl Clone for DropReason
Source§fn clone(&self) -> DropReason
fn clone(&self) -> DropReason
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more