INNER CODE UNIT · Rust
apply_hacc_round
GuildOfWeavers/distaff · src/processor/decoder/mod.rs:448
fn apply_hacc_round(&mut self, op_code: UserOps, op_value: u128) {
// apply single round of sponge function
sponge::apply_round(&mut self.sponge, op_code as u128, op_value, self.step - 1);
// copy the new sponge state into the sponge_trace registers
for i in 0..SPONGE_WIDTH {
self.sponge_trace[i][self.step] = self.sponge[i];
}
}
}
// HELPER FUNCTIONS
// ================================================================================================
fn fill_register(register: &mut Vec<u128>, from: usize, value: u128) {
let to = register.len();
register.resize(from, field::ZERO);
register.resize(to, value);