def close_n
import bolt@1.27.0.0/src/syntax/tree.bend as Treeimport Base
import bolt@1.27.0.0/src/syntax/lex.bend as Lex
218# n groups close, innermost first; only the last gets the close token
219def close_n(nn: Nat, stack: List<&2, Frame>, close: Maybe<&2, Lex.Tok>) -> List<&2, Frame>:
220 match nn:
221 case Zero{}:
222 stack
223 case Succ{Zero{}}:
224 close_one(stack, close)
225 case Succ{p}:
226 close_n(p, close_one(stack, None{}), close)