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{})