def release_checked

bendvy-ecs-core@0.1.0.3 · entity_allocator.bend:80

import bendvy-ecs-core@0.1.0.3/entity_allocator.bend as EntityAllocator
import Base
import entity_key.bend as K

80def release_checked(+key:K.Key,observed:Allocator & Bool) -> Allocator:
81  match observed:
82    case (allocator,False{}):allocator
83    case (Allocator{next,high,slots,capacity,depth,free,order},True{}):Allocator{next,high,Array.set(Slot,slots,K.index(key),Slot{(K.generation(key) + 1 : U32),Free{}}),capacity,depth,K.index(key) <> free,without(order,key)}

Uses (14)

Used by (1)