def ad.split.pick

bend-osdev-aead@0.1.0.0 · aead.bend:19

import bend-osdev-aead@0.1.0.0/aead.bend as Aead
import Base
import bend-osdev-bytes@0.1.0.0/bytes.bend as B
import bend-osdev-crypto@0.1.0.0/crypto.bend as Cr

19def ad.split.pick(short: Bool, +tlen: Nat, +o: B.Octets) -> Result<&2, &2, Cr.CrError, AdSplit>:
20  match short:
21    case True{}:
22      Fail{Cr.CrTooShort{B.Octets.len(o)}}
23    case False{}:
24      +n = Nat.sub(B.Octets.len(o), tlen)
25      Done{AdSplit{B.Octets.take(n, o), B.Octets.drop(n, o)}}

Uses (10)

Used by (2)