def size
import bend-toon-codec@0.1.0.0/src/fold.bend as Foldimport Base
import bend-toon-codec@0.1.0.0/src/json.bend as J
81# Nodes in a value: the fuel for the fold.
82def size(+j: J.Json) -> Nat:
83 match j:
84 case J.JArr{x}:
85 1n+size(x)
86 case J.JObj{x}:
87 1n+size(x)
88 case J.JCons{h, t}:
89 1n+Nat.add(size(h), size(t))
90 case J.JField{k, v, t}:
91 1n+Nat.add(size(v), size(t))
92 case _:
93 1n