def next
bendvy-ecs-core@0.1.0.4 · machine_queue.bend:31
import bendvy-ecs-core@0.1.0.4/machine_queue.bend as MachineQueue
import Base
import bendvy-ecs-core@0.1.0.4/machine.bend as M
import bendvy-ecs-core@0.1.0.4/transaction.bend as Tx
31def next(~S:Data,~K:Data,~V:Data,~W:Type,~E:Data,~take:W -> W & M.Slot<S,K,V>,~put:W -> M.Slot<S,K,V> -> W,~same:V -> V -> Bool,tx:Tx.Tx<W,E>,request:M.QueueInput<V>) -> Tx.Tx<W,E>:
32 match request:
33 case M.Set{value,skipSame}:write(~S,~K,~V,~W,~E,~take,~put,~same,tx,value,skipSame)
34 case M.Reset{}:M.reset_tx(~S,~K,~V,~W,~E,~take,~put,tx)