def batches_into_queue
bendvy-ecs-core@0.1.0.4 · machine_stream.bend:50
import bendvy-ecs-core@0.1.0.4/machine_stream.bend as MachineStream
import Base
import machine.bend as M
import event_runtime.bend as Ev
import machine_stream_queue.bend as Q
50def batches_into_queue(~V:Data,batches:List<&2,Ev.Batch<M.Transition<V>>>,queue:Q.Queue<M.Transition<V>>) -> Q.Queue<M.Transition<V>>:
51 match batches:
52 case []:queue
53 case Ev.Batch{tick,+items} <> rest:batches_into_queue(~V,rest,Q.publish_nonempty(~M.Transition<V>,queue,tick,items,Q.count_loop(~M.Transition<V>,items,0n)))