EntityAllocator.release_checked: def of bendvy-ecs-core@0.1.0.3 Import: import bendvy-ecs-core@0.1.0.3/entity_allocator.bend as EntityAllocator Lines 80-83 of bendvy-ecs-core@0.1.0.3/entity_allocator.bend: https://jend.leeeet.dev/read.txt?path=bendvy-ecs-core@0.1.0.3/entity_allocator.bend&start_line=80&end_line=83 import Base import entity_key.bend as K def release_checked(+key:K.Key,observed:Allocator & Bool) -> Allocator: match observed: case (allocator,False{}):allocator 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): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Array.set https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Sigma https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.add https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_allocator.bend&name=Allocator https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_allocator.bend&name=Phase https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_allocator.bend&name=Slot https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_allocator.bend&name=without https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_key.bend&name=Key https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_key.bend&name=generation https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.3/entity_key.bend&name=index