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}

Uses (9)

Used by (1)