def trim_step_generic
bendvy-ecs-core@0.1.0.3 · machine_stream_queue.bend:35
import bendvy-ecs-core@0.1.0.3/machine_stream_queue.bend as MachineStreamQueue
import Base
35def trim_step_generic(-E: Data,remove: Bool,+tick: Nat,+count: Nat,+items: List<&2,E>,+rest: List<&2,Batch<E>>,+back: List<&2,Batch<E>>,+size: Nat,+dropped: Nat,+batches:Nat,ih: Queue<E> -> Queue<E>) -> Queue<E>:
36 match remove:
37 case False{}: Queue{Batch{tick,count,items} <> rest,back,size,dropped,batches}
38 case True{}: ih(Queue{rest,back,Nat.sub(size,count),Nat.max(dropped,tick),Nat.sub(batches,1n)})