pub enum Rejected {
Gap {
expected: u64,
found: u64,
},
Base {
expected: u64,
found: u64,
},
Result {
expected: u64,
found: u64,
},
Apply(Mismatch),
}Expand description
Why a delta could not be applied.
Every variant means the same thing operationally — this receiver cannot catch up from deltas and needs the whole value resent — but they say different things about what went wrong.
Variants§
Gap
A delta was missed: this one was computed against a version that was never reached. The stream lost or reordered a message.
Fields
Base
The version lined up but the content did not, so the value drifted for a reason outside this stream — a direct mutation, a partly applied earlier delta, or two senders writing to one receiver.
Fields
Result
Applying the delta did not produce what the sender said it would. The two sides disagree about what the delta means: mismatched schema versions, or a bug.
Fields
Apply(Mismatch)
The delta did not fit the value’s shape at all — an enum delta built for one variant meeting a value in another.
The base fingerprint is checked first and
would normally have caught that, so reaching this means a fingerprint
collision or a bug rather than ordinary divergence.
Trait Implementations§
impl Copy for Rejected
impl Eq for Rejected
Source§impl Error for Rejected
impl Error for Rejected
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()