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

Uses (7)

Used by (1)