pub struct DiffPageProofVerification {
pub valid: bool,
pub base_valid: bool,
pub other_valid: bool,
pub lookahead_valid: bool,
pub base_root: Option<Cid>,
pub other_root: Option<Cid>,
pub after: Option<Vec<u8>>,
pub requested_end: Option<Vec<u8>>,
pub proof_end: Option<Vec<u8>>,
pub limit: usize,
pub diffs: Vec<Diff>,
pub next_cursor: Option<RangeCursor>,
}Expand description
Store-independent verification result for a DiffPageProof.
Fields§
§valid: boolTrue when both range proofs are valid, bounds match, optional lookahead proofs are valid, and the recomputed diff count matches the page limit.
base_valid: boolWhether the base range-page proof verified.
other_valid: boolWhether the other range-page proof verified.
lookahead_valid: boolWhether the lookahead proofs were absent for a final page or valid for a continued page.
base_root: Option<Cid>Base tree root from the proof.
other_root: Option<Cid>Other tree root from the proof.
after: Option<Vec<u8>>Exclusive cursor lower bound.
requested_end: Option<Vec<u8>>Original exclusive upper bound requested by the caller.
proof_end: Option<Vec<u8>>Exclusive upper bound covered by the range proofs. For continued pages
this is the first omitted diff key; for final pages it equals
requested_end.
limit: usizeOriginal page limit requested by the caller.
diffs: Vec<Diff>Diffs recomputed from verified base/other entries.
next_cursor: Option<RangeCursor>Continuation cursor derived from the recomputed page and lookahead.
Implementations§
Trait Implementations§
Source§impl Clone for DiffPageProofVerification
impl Clone for DiffPageProofVerification
Source§fn clone(&self) -> DiffPageProofVerification
fn clone(&self) -> DiffPageProofVerification
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 DiffPageProofVerification
impl Debug for DiffPageProofVerification
impl Eq for DiffPageProofVerification
impl StructuralPartialEq for DiffPageProofVerification
Auto Trait Implementations§
impl Freeze for DiffPageProofVerification
impl RefUnwindSafe for DiffPageProofVerification
impl Send for DiffPageProofVerification
impl Sync for DiffPageProofVerification
impl Unpin for DiffPageProofVerification
impl UnsafeUnpin for DiffPageProofVerification
impl UnwindSafe for DiffPageProofVerification
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more