def lpops

bend-visgraph@2.0.0.0 · visgraph.bend:261

import bend-visgraph@2.0.0.0/visgraph.bend as Visgraph
import Base

261def lpops(rest: Stack, beat: Bool, +y: F32, +i: U32, +j: U32, +kj: F32, rights: Array<U32>, +visits: F32) -> Arrived:
262  match rest beat:
263    case KCon{+j2, +k2, rest2} True{}:
264      +r = (i - 1 - j : U32)
265      lpops(rest2, F32.is_gt(y, k2), y, i, j2, k2, Array.set(U32, rights, j, r), F32.add(visits, U32.to_f32(r)))
266    case KNil{} True{}:
267      +r = (i - 1 - j : U32)
268      PopsAll{Array.set(U32, rights, j, r), F32.add(visits, U32.to_f32(r))}
269    case _ False{}:
270      Bounded{(j + 1 : U32), kj, KCon{j, kj, rest}, rights, visits}

Uses (12)

Used by (1)