def queue_reading
bendvy-ecs-core@0.1.0.4 · internal/relation_failures/readings.bend:9
import bendvy-ecs-core@0.1.0.4/internal/relation_failures/readings.bend as Readings
import Base
import queue.bend as Q
import domains.bend as D
import bendvy-ecs-core@0.1.0.4/event_runtime.bend as Ev
9def queue_reading(~S: Data,~E: Data,key: D.DescriptorKey<S>,queue: Q.Queue<E>,position: Ev.Position) -> KeyReading<S,E>:
10 match queue position:
11 case Q.Queue{+front,+back,+size,+dropped} Ev.Position{_,+cursor,+registered}: KeyReading{key,Q.read(~E,Q.Queue{front,back,size,dropped},cursor),Nat.is_lt(Nat.max(cursor,registered),dropped)}