Struct merkle::MerkleTree [] [src]

pub struct MerkleTree<T> {
    pub algorithm: &'static Algorithm,
    // some fields omitted
}

A Merkle tree is a binary tree, with values of type T at the leafs, and where every internal node holds the hash of the concatenation of the hashes of its children nodes.

Fields

The hashing algorithm used by this Merkle tree

Methods

impl<T> MerkleTree<T>
[src]

Constructs a Merkle Tree from a vector of data blocks. Returns None if values is empty.

Returns the root hash of Merkle tree

Returns the height of Merkle tree

Returns the number of leaves in the Merkle tree

Returns whether the Merkle tree is empty or not

Generate an inclusion proof for the given value. Returns None if the given value is not found in the tree.

Creates an Iterator over the values contained in this Merkle tree.

Trait Implementations

impl<T: Clone> Clone for MerkleTree<T>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<T: Debug> Debug for MerkleTree<T>
[src]

Formats the value using the given formatter.

impl<T> IntoIterator for MerkleTree<T>
[src]

The type of the elements being iterated over.

Which kind of iterator are we turning this into?

Creates a consuming iterator, that is, one that moves each value out of the Merkle tree. The tree cannot be used after calling this.

impl<'a, T> IntoIterator for &'a MerkleTree<T>
[src]

The type of the elements being iterated over.

Which kind of iterator are we turning this into?

Creates a borrowing Iterator over the values contained in this Merkle tree.