def done.fr
bend-kit-cbor@0.3.0.0 · cbor.bend:729
import bend-kit-cbor@0.3.0.0/cbor.bend as Cbor
import Base
729def done.fr(fr: Frame, v: Val, +i: U32, rest: List<&1, Frame>) -> St:
730 match fr:
731 case FArr{+left, xs}:
732 done.arr(U32.is_eq(left, 1), left, Con{v, xs}, i, rest)
733 case FArrI{xs}:
734 SHead{i, Con{FArrI{Con{v, xs}}, rest}}
735 case FMap{+left, kvs}:
736 SHead{i, Con{FKey{left, kvs, v}, rest}}
737 case FKey{+left, kvs, k}:
738 done.map(U32.is_eq(left, 1), left, Con{(k, v), kvs}, i, rest)
739 case FMapI{kvs}:
740 SHead{i, Con{FKeyI{kvs, v}, rest}}
741 case FKeyI{kvs, k}:
742 SHead{i, Con{FMapI{Con{(k, v), kvs}}, rest}}
743 case FTag{number}:
744 SDone{Tag{number, v}, i, rest}