def blocks
bend-collections-laws-crypto@1.0.0.0 · src/crypto/sha/packed/packed.bend:165
import bend-collections-laws-crypto@1.0.0.0/src/crypto/sha/packed/packed.bend as Packed
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/sha/state.bend as S
165def blocks(+extra: Nat,n: Nat, +index: U32, +remain: Nat, +total: Nat, pair: Array<U32> & S.State) -> Array<U32> & S.State:
166 match n pair:
167 case 0n Tuple{a,s}:
168 final_extra(extra,Nat.is_ge(remain,56n),total,pad1(extra,index,s,remain,total,at(a,index)))
169 case 1n+p Tuple{a,s}:
170 blocks(extra,p,U32.add(index,16),remain,total,read1(extra,index,s,at(a,index)))