def reserve_reader_checked
bendvy-ecs-core@0.1.0.4 · relation_failure_runtime.bend:47
import bendvy-ecs-core@0.1.0.4/relation_failure_runtime.bend as RelationFailureRuntime
import Base
47
48def reserve_reader_checked(~S:Data,~C:Type,~R:Type,~E:Data,available:Bool,runtime:Runtime<S,C,R,E>) -> Runtime<S,C,R,E> & Maybe<&2,U32>:
49 match available runtime:
50 case False{} runtime:(runtime,None{})
51 case True{} Runtime{world,domains,positions,tick,frameStart,boundary,capacity,+nextReader}:
52 (Runtime{world,domains,positions,tick,frameStart,boundary,capacity,(nextReader+1 : U32)},Some{nextReader})