def Queue.pop.go

bend-kube-runtime@0.2.0.0 · src/queue.bend:104

import bend-kube-runtime@0.2.0.0/src/queue.bend as Queue
import Base

104def Queue.pop.go(f: List<&2, String>, b: List<&2, String>, i: Map<&2, U32>, r: Map<&2, U32>,
105  d: Map<&2, U32>, g: Map<&2, U32>, fl: Map<&2, U32>, +n: U32, mx: U32, free: Bool) ->
106  Queue & Maybe<&2, String>:
107  match f free:
108    case Con{+k, t} True{}:
109      (Queue{t, b, Mp.off(i, k), Mp.on(r, k), d, g, fl, (n + 1 : U32), mx}, Some{k})
110    case Nil{} True{}:
111      Queue.pop.flip(List.reverse(&2, String, b), i, r, d, g, fl, n, mx)
112    case xs False{}:
113      (Queue{xs, b, i, r, d, g, fl, n, mx}, None{})

Uses (14)

Used by (3)