Struct diem_types::proof::definition::SparseMerkleRangeProof [−][src]
pub struct SparseMerkleRangeProof { /* fields omitted */ }
Expand description
Note: this is not a range proof in the sense that a range of nodes is verified! Instead, it verifies the entire left part of the tree up to a known rightmost node. See the description below.
A proof that can be used to authenticate a range of consecutive leaves, from the leftmost leaf to the rightmost known one, in a sparse Merkle tree. For example, given the following sparse Merkle tree:
root
/ \
/ \
/ \
o o
/ \ / \
a o o h
/ \ / \
o d e X
/ \ / \
b c f g
if the proof wants show that [a, b, c, d, e]
exists in the tree, it would need the siblings
X
and h
on the right.
Implementations
Returns the right siblings.
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for SparseMerkleRangeProof
impl Send for SparseMerkleRangeProof
impl Sync for SparseMerkleRangeProof
impl Unpin for SparseMerkleRangeProof
impl UnwindSafe for SparseMerkleRangeProof
Blanket Implementations
Mutably borrows from an owned value. Read more
Generates a hash used only for tests.