def decode.tag.if
import bend-kit-runner@0.13.0.1/runner.bend as Runnerimport Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes
970def decode.tag.if(~A: Data, ~pdec: Bytes.Bytes -> Maybe<&2, A>, brk: Bool, +tag: U32, +len: U32, b: Bytes.Bytes) -> Maybe<&2, Op<A>>:
971 match brk:
972 case True{}:
973 rd.done(Op<A>, len, rd.break(A, U32.to_nat((len / 4 + 1 : U32)))(Rd{b, 4}))
974 case False{}:
975 decode.a(~A, ~pdec, tag, len, get.u64(b, 4))