def u32.dig
import bend-kit-json@0.7.0.0/json.bend as Jsonimport Base
941def u32.dig(s: String, +acc: U32, bad: Bool) -> Maybe<&2, U32>:
942 match s:
943 case SNil{}:
944 match bad:
945 case True{}:
946 None{}
947 case False{}:
948 Some{acc}
949 case SCon{Chr{+c}, t}:
950 u32.dig(t, (acc * 10 + (c - 48 : U32) : U32), Bool.or(bad, Bool.or(Bool.not(digit(c)), u32.over(acc, c))))