def schedule_rounds

bend-collections@1.0.0.0 · proofs/crypto/sha/packed/core_model.bend:71

import bend-collections@1.0.0.0/proofs/crypto/sha/packed/core_model.bend as CoreModel
import Base
import bend-collections@1.0.0.0/src/crypto/sha/packed/core.bend as Runtime
import bend-collections@1.0.0.0/src/crypto/sha/state.bend as S

71# Consume the original block words, then continue directly with its expansion.
72def schedule_rounds(ws: List<&2, U32>, +extra: Nat, +history: List<&2, U32>, ks: List<&2, U32>, s: S.State) -> S.State:
73  match ws ks:
74    case Nil{} _:
75      expanded_rounds(extra, history, ks, s)
76    case w <> wt Nil{}:
77      s
78    case w <> wt k <> kt:
79      schedule_rounds(wt, extra, history, kt, Runtime.step(s, k, w))

Uses (6)

Used by (5)