Struct akd::proof_structs::SingleAppendOnlyProof
source · pub struct SingleAppendOnlyProof<H: Hasher> {
pub inserted: Vec<Node<H>>,
pub unchanged_nodes: Vec<Node<H>>,
}
Expand description
Proof that no leaves were deleted from the initial epoch. This means that unchanged_nodes should hash to the initial root hash and the vec of inserted is the set of leaves inserted between these epochs. If we built the tree using the nodes in inserted and the nodes in unchanged_nodes as the leaves with the correct epoch of insertion, it should result in the final root hash.
Fields
inserted: Vec<Node<H>>
The inserted nodes & digests
unchanged_nodes: Vec<Node<H>>
The unchanged nodes & digests
Trait Implementations
sourceimpl<H: Hasher> Clone for SingleAppendOnlyProof<H>
impl<H: Hasher> Clone for SingleAppendOnlyProof<H>
sourceimpl<H: Debug + Hasher> Debug for SingleAppendOnlyProof<H>
impl<H: Debug + Hasher> Debug for SingleAppendOnlyProof<H>
sourceimpl<H: PartialEq + Hasher> PartialEq<SingleAppendOnlyProof<H>> for SingleAppendOnlyProof<H>
impl<H: PartialEq + Hasher> PartialEq<SingleAppendOnlyProof<H>> for SingleAppendOnlyProof<H>
sourcefn eq(&self, other: &SingleAppendOnlyProof<H>) -> bool
fn eq(&self, other: &SingleAppendOnlyProof<H>) -> bool
impl<H: Eq + Hasher> Eq for SingleAppendOnlyProof<H>
impl<H: Hasher> StructuralEq for SingleAppendOnlyProof<H>
impl<H: Hasher> StructuralPartialEq for SingleAppendOnlyProof<H>
Auto Trait Implementations
impl<H> RefUnwindSafe for SingleAppendOnlyProof<H>where
<H as Hasher>::Digest: RefUnwindSafe,
impl<H> Send for SingleAppendOnlyProof<H>
impl<H> Sync for SingleAppendOnlyProof<H>
impl<H> Unpin for SingleAppendOnlyProof<H>where
<H as Hasher>::Digest: Unpin,
impl<H> UnwindSafe for SingleAppendOnlyProof<H>where
<H as Hasher>::Digest: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.