OutputSizeUser

Trait OutputSizeUser 

pub trait OutputSizeUser {
    type OutputSize: ArrayLength<u8> + 'static;

    // Provided method
    fn output_size() -> usize { ... }
}
Expand description

Types which return data with the given size.

Required Associated Types§

type OutputSize: ArrayLength<u8> + 'static

Size of the output in bytes.

Provided Methods§

fn output_size() -> usize

Return output size in bytes.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

§

impl OutputSizeUser for Blake2bVarCore

§

impl OutputSizeUser for Blake2sVarCore

§

impl OutputSizeUser for Keccak224Core

§

impl OutputSizeUser for Keccak256Core

§

impl OutputSizeUser for Keccak256FullCore

§

impl OutputSizeUser for Keccak384Core

§

impl OutputSizeUser for Keccak512Core

§

impl OutputSizeUser for Sha3_224Core

§

impl OutputSizeUser for Sha3_256Core

§

impl OutputSizeUser for Sha3_384Core

§

impl OutputSizeUser for Sha3_512Core

§

impl OutputSizeUser for Sha256VarCore

§

impl OutputSizeUser for Sha512VarCore

Source§

impl<D> OutputSizeUser for HmacCore<D>
where D: CoreProxy, <D as CoreProxy>::Core: HashMarker + UpdateCore + FixedOutputCore<BufferKind = Eager> + BufferKindUser + Default + Clone, <<D as CoreProxy>::Core as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>, <<<D as CoreProxy>::Core as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

Source§

type OutputSize = <<D as CoreProxy>::Core as OutputSizeUser>::OutputSize

Source§

impl<D> OutputSizeUser for SimpleHmac<D>
where D: Digest + BlockSizeUser,

§

impl<OutSize> OutputSizeUser for Blake2bMac<OutSize>
where OutSize: ArrayLength<u8> + IsLessOrEqual<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>> + 'static, <OutSize as IsLessOrEqual<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

§

type OutputSize = OutSize

§

impl<OutSize> OutputSizeUser for Blake2sMac<OutSize>
where OutSize: ArrayLength<u8> + IsLessOrEqual<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>> + 'static, <OutSize as IsLessOrEqual<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

§

type OutputSize = OutSize

§

impl<T> OutputSizeUser for CoreWrapper<T>
where T: BufferKindUser + OutputSizeUser, <T as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>, <<T as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

§

impl<T, OutSize, O> OutputSizeUser for CtVariableCoreWrapper<T, OutSize, O>
where T: VariableOutputCore, OutSize: ArrayLength<u8> + IsLessOrEqual<<T as OutputSizeUser>::OutputSize> + 'static, <OutSize as IsLessOrEqual<<T as OutputSizeUser>::OutputSize>>::Output: NonZero, <T as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>, <<T as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

§

type OutputSize = OutSize

Implementors§