def uni.put
import emerging-ezjson@1.3.0.0/src/pull.bend as Pullimport Base
1058# one more hex digit, or the code point
1059def uni.put(
1060 tl: String,
1061 left: Nat,
1062 acc: U32,
1063 dig: U32,
1064 buf: List<&2, Char>,
1065 stack: List<&2, Frame>,
1066 goal: Goal,
1067 done: Bool
1068) -> St:
1069 match left:
1070 case 0n:
1071 uni.end(tl, (acc * 16 + dig : U32), buf, stack, goal, done)
1072 case 1n+p:
1073 S{MUni{p, (acc * 16 + dig : U32), buf}, stack, goal, done, False{}}