def digits.go
import bend-kit-time@0.3.0.0/time.bend as Timeimport Base
390def digits.go(n: Nat, s: String, +acc: U32, ok: Bool) -> Maybe<&1, U32 & String>:
391 match n:
392 case 0n:
393 match ok:
394 case True{}:
395 Some{(acc, s)}
396 case False{}:
397 None{}
398 case 1n+k:
399 match s:
400 case SNil{}:
401 None{}
402 case SCon{Chr{+c}, t}:
403 digits.go(k, t, (acc * 10 + c - 48 : U32), Bool.and(ok, is_digit(c)))