def blocks

bend-collections@1.0.0.0 · spec/crypto/sha/packed.bend:83

import bend-collections@1.0.0.0/spec/crypto/sha/packed.bend as Packed
import Base
import bend-collections@1.0.0.0/src/crypto/sha/state.bend as S

83def blocks(+extra: Nat,n: Nat, +index: U32, +remain: Nat, +total: Nat, pair: Array<U32> & S.State) -> Array<U32> & S.State:
84  match n pair:
85    case 0n Tuple{a,s}:
86      final_extra(extra,Nat.is_ge(remain,56n),total,gather(extra,15n,index,True{},remain,total,s,Nil{},Array.get(U32,a,index)))
87    case 1n+p Tuple{a,s}:
88      blocks(extra,p,U32.add(index,16),remain,total,gather(extra,15n,index,False{},0n,0n,s,Nil{},Array.get(U32,a,index)))

Uses (13)

Used by (5)