INNER CODE UNIT · Rust
bitunpack_ring_element_gamma
orion-rs/orion · src/hazardous/dsa/ml_dsa/internal/mod.rs:123
fn bitunpack_ring_element_gamma(v: &[u8], w: &mut RingElement);
/// FIPS-204, Algorithm 28.
fn bitpack_polynomial_vector_w1(w1: &RingElement, out: &mut [u8]);
/// FIPS-204, Algorithm 28.
fn bitpack_polynomial_z(z: &RingElement, out: &mut [u8]);
/// FIPS-204, Algorithm 28.
fn w1_encode<const K: usize>(w1: &Vector<K>, out: &mut [u8]) {
debug_assert_eq!(K, Self::DIM_K);
debug_assert_eq!(out.len(), K * Self::W1_BITPACK_SIZE);
for (poly, chunk) in w1
.elems
.iter()
.zip(out.chunks_exact_mut(Self::W1_BITPACK_SIZE))
{