[]Enum sc_network::multiaddr::multihash::Code

pub enum Code {
    Identity,
    Sha1,
    Sha2_256,
    Sha2_512,
    Sha3_224,
    Sha3_256,
    Sha3_384,
    Sha3_512,
    Keccak224,
    Keccak256,
    Keccak384,
    Keccak512,
    Blake2b256,
    Blake2b512,
    Blake2s128,
    Blake2s256,
    Custom(u64),
}

The code of Multihash.

Variants

Identity

Identity (Raw binary )

Sha1

SHA-1 (20-byte hash size)

Sha2_256

SHA-256 (32-byte hash size)

Sha2_512

SHA-512 (64-byte hash size)

Sha3_224

SHA3-224 (28-byte hash size)

Sha3_256

SHA3-256 (32-byte hash size)

Sha3_384

SHA3-384 (48-byte hash size)

Sha3_512

SHA3-512 (64-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)

Blake2b256

BLAKE2b-256 (32-byte hash size)

Blake2b512

BLAKE2b-512 (64-byte hash size)

Blake2s128

BLAKE2s-128 (16-byte hash size)

Blake2s256

BLAKE2s-256 (32-byte hash size)

Custom(u64)

Make it possible to use a custom code that is not part of the enum yet

Implementations

impl Code

pub fn to_u64(&self) -> u64

Return the code as integer value.

pub fn from_u64(code: u64) -> Code

Return the Code based on the integer value. If the code is unknown/not implemented yet then it returns a Code::Custom. implements with that value.

pub fn hasher(&self) -> Option<Box<dyn MultihashDigest + 'static>>

Return the hasher that is used to create a hash with this code.

If a custom code is used, None is returned.

Trait Implementations

impl Clone for Code

impl Copy for Code

impl Debug for Code

impl Eq for Code

impl PartialEq<Code> for Code

impl StructuralEq for Code

impl StructuralPartialEq for Code

Auto Trait Implementations

impl RefUnwindSafe for Code

impl Send for Code

impl Sync for Code

impl Unpin for Code

impl UnwindSafe for Code

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> CheckedConversion for T[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, Outer> IsWrappedBy<Outer> for T where
    Outer: AsRef<T> + AsMut<T> + From<T>,
    T: From<Outer>, 
[src]

fn from_ref(outer: &Outer) -> &T[src]

Get a reference to the inner from the outer.

fn from_mut(outer: &mut Outer) -> &mut T[src]

Get a mutable reference to the inner from the outer.

impl<T> MaybeDebug for T where
    T: Debug

impl<T> MaybeDebug for T where
    T: Debug

impl<T> MaybeRefUnwindSafe for T where
    T: RefUnwindSafe

impl<T> Member for T where
    T: 'static + Clone + PartialEq<T> + Eq + Send + Sync + Debug
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SaturatedConversion for T[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized
[src]

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<S, T> UncheckedInto<T> for S where
    T: UncheckedFrom<S>, 
[src]

impl<T, S> UniqueSaturatedInto<T> for S where
    S: TryInto<T>,
    T: Bounded
[src]

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