[][src]Enum neptune::hash_type::HashType

pub enum HashType<Fr: PrimeField, A: Arity<Fr>> {
    MerkleTree,
    MerkleTreeSparse(u64),
    VariableLength,
    ConstantLength(usize),
    Encryption,
    Custom(CType<Fr, A>),
}

Variants

MerkleTree
MerkleTreeSparse(u64)
VariableLength
ConstantLength(usize)
Encryption
Custom(CType<Fr, A>)

Implementations

impl<Fr: PrimeField, A: Arity<Fr>> HashType<Fr, A>[src]

pub fn domain_tag(&self, strength: &Strength) -> Fr[src]

pub fn is_supported(&self) -> bool[src]

Some HashTypes require more testing so are not yet supported, since they are not yet needed. As and when needed, support can be added, along with tests to ensure the initial implementation is sound.

Trait Implementations

impl<Fr: Clone + PrimeField, A: Clone + Arity<Fr>> Clone for HashType<Fr, A>[src]

impl<Fr: Debug + PrimeField, A: Debug + Arity<Fr>> Debug for HashType<Fr, A>[src]

impl<Fr: PartialEq + PrimeField, A: PartialEq + Arity<Fr>> PartialEq<HashType<Fr, A>> for HashType<Fr, A>[src]

impl<Fr: PrimeField, A: Arity<Fr>> StructuralPartialEq for HashType<Fr, A>[src]

Auto Trait Implementations

impl<Fr, A> RefUnwindSafe for HashType<Fr, A> where
    A: RefUnwindSafe,
    Fr: RefUnwindSafe

impl<Fr, A> Send for HashType<Fr, A> where
    A: Send

impl<Fr, A> Sync for HashType<Fr, A> where
    A: Sync

impl<Fr, A> Unpin for HashType<Fr, A> where
    A: Unpin,
    Fr: Unpin

impl<Fr, A> UnwindSafe for HashType<Fr, A> where
    A: UnwindSafe,
    Fr: 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<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>,