def reserve_result
bendvy-ecs-core@0.1.0.3 · world.bend:129
import bendvy-ecs-core@0.1.0.3/world.bend as World
import Base
import bendvy-ecs-core@0.1.0.3/clock_state.bend as Clock
import bendvy-ecs-core@0.1.0.3/execution_lifecycle_notices.bend as Notice
import bendvy-ecs-core@0.1.0.3/deferred_command.bend as Deferred
import entity_allocator.bend as A
129def reserve_result(~S:Data,~C:Type,~R:Type,~E:Data,+namespace:U32,store:C,resource:R,+events:List<&2,E>,pending:List<Deferred.Command<World<S,C,R,E>>>,+registrations:List<&2,RegistrationMeta>,+nextSystemId:U32,+clock:Clock.State,allocator:A.Allocator,reservation:A.Reservation,lifecycle:Notice.Journal<S>) -> World<S,C,R,E> & Reservation<S>:
130 match reservation:
131 case A.Exhausted{}:(World{namespace,allocator,store,resource,events,pending,registrations,nextSystemId,clock,lifecycle},ReservationRejected{CapacityExceeded{}})
132 case A.Reserved{key}:(World{namespace,allocator,store,resource,events,pending,registrations,nextSystemId,clock,lifecycle},Reserved{Handle{namespace,key}})