Struct snarkvm_wasm::CommitmentMerkleTree[][src]

pub struct CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
{ /* fields omitted */ }

Implementations

impl<C, H> CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
[src]

pub fn new(
    parameters: H,
    leaves: &[<C as CommitmentScheme>::Output; 4]
) -> Result<CommitmentMerkleTree<C, H>, MerkleError>
[src]

Construct a new commitment Merkle tree.

pub fn root(&self) -> <H as CRH>::Output[src]

pub fn inner_hashes(&self) -> (<H as CRH>::Output, <H as CRH>::Output)[src]

pub fn leaves(&self) -> [<C as CommitmentScheme>::Output; 4][src]

pub fn generate_proof(
    &self,
    leaf: &<C as CommitmentScheme>::Output
) -> Result<CommitmentMerklePath<C, H>, MerkleError>
[src]

pub fn from_bytes<R>(
    reader: R,
    parameters: H
) -> Result<CommitmentMerkleTree<C, H>, Error> where
    R: Read
[src]

Trait Implementations

impl<C, H> Clone for CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
[src]

impl<C, H> Debug for CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
[src]

impl<C, H> Eq for CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
[src]

impl<C, H> PartialEq<CommitmentMerkleTree<C, H>> for CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
[src]

impl<C, H> ToBytes for CommitmentMerkleTree<C, H> where
    C: CommitmentScheme,
    H: CRH
[src]

Auto Trait Implementations

impl<C, H> RefUnwindSafe for CommitmentMerkleTree<C, H> where
    H: RefUnwindSafe,
    <C as CommitmentScheme>::Output: RefUnwindSafe,
    <H as CRH>::Output: RefUnwindSafe

impl<C, H> Send for CommitmentMerkleTree<C, H> where
    H: Send,
    <C as CommitmentScheme>::Output: Send,
    <H as CRH>::Output: Send

impl<C, H> Sync for CommitmentMerkleTree<C, H> where
    H: Sync,
    <C as CommitmentScheme>::Output: Sync,
    <H as CRH>::Output: Sync

impl<C, H> Unpin for CommitmentMerkleTree<C, H> where
    H: Unpin,
    <C as CommitmentScheme>::Output: Unpin,
    <H as CRH>::Output: Unpin

impl<C, H> UnwindSafe for CommitmentMerkleTree<C, H> where
    H: UnwindSafe,
    <C as CommitmentScheme>::Output: UnwindSafe,
    <H as CRH>::Output: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,