def cbc.enc.go
import bend-osdev-cbc@0.1.0.0/cbc.bend as Cbcimport Base
import bend-osdev-mode-core@0.1.0.0/mode_core.bend as M
35def cbc.enc.go(~K: Data, ~enc: K -> M.CmBlock -> M.CmBlock, +k: K, bs: List<&2, M.CmBlock>, iv: M.CmBlock, acc: List<&2, M.CmBlock>) -> List<&2, M.CmBlock>:
36 match bs:
37 case Nil{}:
38 M.cm.blocks.rev_onto(acc, Nil{})
39 case Con{p, t}:
40 +c = enc(k, M.CmBlock.xor(iv, p))
41 cbc.enc.go(~K, ~enc, k, t, c, Con{c, acc})