[][src]Enum libp2p::core::multiaddr::multihash::Hash

pub enum Hash {
    Identity,
    SHA1,
    SHA2256,
    SHA2512,
    SHA3512,
    SHA3384,
    SHA3256,
    SHA3224,
    Keccak224,
    Keccak256,
    Keccak384,
    Keccak512,
    Blake2b512,
    Blake2b256,
    Blake2s256,
    Blake2s128,
}

List of types currently supported in the multihash spec.

Not all hash types are supported by this library.

Variants

Identity

Identity (Raw binary )

SHA1

SHA-1 (20-byte hash size)

SHA2256

SHA-256 (32-byte hash size)

SHA2512

SHA-512 (64-byte hash size)

SHA3512

SHA3-512 (64-byte hash size)

SHA3384

SHA3-384 (48-byte hash size)

SHA3256

SHA3-256 (32-byte hash size)

SHA3224

SHA3-224 (28-byte hash size)

Keccak224

Keccak-224 (28-byte hash size)

Keccak256

Keccak-256 (32-byte hash size)

Keccak384

Keccak-384 (48-byte hash size)

Keccak512

Keccak-512 (64-byte hash size)

Blake2b512

BLAKE2b-512 (64-byte hash size)

Blake2b256

BLAKE2b-256 (32-byte hash size)

Blake2s256

BLAKE2s-256 (32-byte hash size)

Blake2s128

BLAKE2s-128 (16-byte hash size)

Methods

impl Hash[src]

pub fn code(&self) -> u16[src]

Get the corresponding hash code.

pub fn size(&self) -> u8[src]

Get the hash length in bytes.

pub fn from_code(code: u16) -> Option<Hash>[src]

Returns the algorithm corresponding to a code, or None if no algorithm is matching.

Trait Implementations

impl Clone for Hash[src]

impl Copy for Hash[src]

impl Debug for Hash[src]

impl Eq for Hash[src]

impl Hash for Hash[src]

impl PartialEq<Hash> for Hash[src]

impl StructuralEq for Hash[src]

impl StructuralPartialEq for Hash[src]

Auto Trait Implementations

impl RefUnwindSafe for Hash

impl Send for Hash

impl Sync for Hash

impl Unpin for Hash

impl UnwindSafe for Hash

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> 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>,