Skip to main content

EncodingSize

Trait EncodingSize 

Source
pub trait EncodingSize: ArraySize {
    type EncodedPolynomialSize: ArraySize;
    type ValueStep: ArraySize;
    type ByteStep: ArraySize;
}
Expand description

An integer that can describe encoded polynomials.

Required Associated Types§

Source

type EncodedPolynomialSize: ArraySize

Size of an encoded polynomial.

Source

type ValueStep: ArraySize

Value step.

Source

type ByteStep: ArraySize

Byte step.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<D> EncodingSize for D
where D: ArraySize + Mul<U8> + Gcd<U8> + Mul<U32>, Prod<D, U32>: ArraySize, Prod<D, U8>: Div<Gcf<D, U8>>, Quot<Prod<D, U8>, Gcf<D, U8>>: Div<D> + Div<U8>, Quot<Quot<Prod<D, U8>, Gcf<D, U8>>, D>: ArraySize, Quot<Quot<Prod<D, U8>, Gcf<D, U8>>, U8>: ArraySize,

Source§

type EncodedPolynomialSize = <D as Mul<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output

Source§

type ValueStep = <<<D as Mul<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>>::Output as Div<<D as Gcd<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>>::Output>>::Output as Div<D>>::Output

Source§

type ByteStep = <<<D as Mul<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>>::Output as Div<<D as Gcd<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>>::Output>>::Output as Div<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>>::Output