pub struct SparseResponse {
pub manifest: SparseManifest,
pub entries: Vec<TreeEntry>,
pub proof: SparseProof,
}Expand description
Complete server-to-client sparse delivery: manifest + entries + proof, in the order they appear on the wire. The encoder and decoder are content-stable across calls so the byte layout can be pinned in golden vectors if and when needed.
Fields§
§manifest: SparseManifestManifest committing to the delivery (104 bytes on the wire).
entries: Vec<TreeEntry>The subset of tree entries the filter selects, in canonical lex-sorted order. The verifier walks these alongside the bitmap.
proof: SparseProofProof bundle. Phase 2 carries only the raw bitmap bytes; the future MMR proof slot is reserved for streaming-only transports.
Trait Implementations§
Source§impl Clone for SparseResponse
impl Clone for SparseResponse
Source§fn clone(&self) -> SparseResponse
fn clone(&self) -> SparseResponse
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SparseResponse
impl RefUnwindSafe for SparseResponse
impl Send for SparseResponse
impl Sync for SparseResponse
impl Unpin for SparseResponse
impl UnsafeUnpin for SparseResponse
impl UnwindSafe for SparseResponse
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Converts
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>
Converts
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