def scope_dispose
bendvy-ecs-core@0.1.0.3 · execution_command_publication.bend:123
import bendvy-ecs-core@0.1.0.3/execution_command_publication.bend as ExecutionCommandPublication
import Base
import bendvy-ecs-core@0.1.0.3/world.bend as W
import bendvy-ecs-core@0.1.0.3/entity_allocator.bend as A
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/execution_command_buffer.bend as Buffer
import bendvy-ecs-core@0.1.0.3/execution_command_removed.bend as Removed
123def scope_dispose(~S:Data,~R:Type,~E:Data,~layout:Layout.Layout,~route:Layout.Route,world:W.World<S,Layout.columns(~S,layout),R,E>,handle:W.Handle<S>,tick:Tick.Tick) -> W.World<S,Layout.columns(~S,layout),R,E> & Buffer.Receipt<S,Layout.payload(layout,route),Removed.Removed(layout)>:
124 match world handle:
125 case W.World{+namespace,allocator,store,resource,events,pending,registrations,nextSystemId,clock,lifecycle} W.Handle{+handleNamespace,+key}:despawn_live(~S,~R,~E,~layout,~route,store,Remainder{namespace,resource,events,pending,registrations,nextSystemId,clock,lifecycle},W.Handle{handleNamespace,key},namespaced_liveness(U32.is_eq(namespace,handleNamespace),A.checked(allocator,key,1)),tick)