def u64.show.go

bend-kit-redis@0.3.0.0 · redis.bend:75

import bend-kit-redis@0.3.0.0/redis.bend as Redis
import Base

75# z is set once the value left to print is zero; 20 digits hold any u64.
76def u64.show.go(f: Nat, q: U32 & U32 & U32, acc: String, +z: Bool) -> String:
77  match f:
78    case 0n:
79      acc
80    case 1n+p:
81      # A + on a later tuple binder fails to check (https://github.com/bendlang/bend/issues/1077).
82      (hi0, lo0, r) = q
83      +hi = hi0
84      +lo = lo0
85      u64.show.go(p, u64.div10(hi, lo), digit.put(z, r, acc), Bool.or(z, U32.is_eq((hi .|. lo : U32), 0)))

Uses (11)

Used by (1)