def live_checked
bendvy-ecs-core@0.1.0.3 · execution_relation_linked_despawn.bend:55
import bendvy-ecs-core@0.1.0.3/execution_relation_linked_despawn.bend as ExecutionRelationLinkedDespawn
import Base
import bendvy-ecs-core@0.1.0.3/world.bend as W
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_permission.bend as Permission
import bendvy-ecs-core@0.1.0.3/execution_relation_context.bend as Context
import bendvy-ecs-core@0.1.0.3/execution_lifetime_scope_coverage.bend as Coverage
import bendvy-ecs-core@0.1.0.3/execution_lifetime_scope_cleanup.bend as Cleanup
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
55def live_checked(~S:Data,~C:Type,~R:Type,~E:Data,~P:Type,~D:Type,~resources:Layout.Layout,~same:{R == Layout.resources(~S,resources) : Type},~selection:Permission.Selection<S,resources>,~relations:Permission.Relations<S,resources>,~dispose:Cleanup.Dispose(~S,~C,~R,~E,~P,~D),context:Context.Context<S,R,resources,same>,handle:W.Handle<S>,tick:Tick.Tick,result:W.World<S,C,R,E> & Bool) -> W.World<S,C,R,E> & Buffer.Receipt<S,P,D>:
56 match result:
57 case (world,False{}):(world,Buffer.DespawnRefused{handle})
58 case (world,True{}):covered(~S,~C,~R,~E,~P,~D,~resources,~same,~selection,~relations,~dispose,Coverage.cleanup_complete(~S,~resources,relations,Permission.cleanup_routes(S,resources,selection)),context,handle,tick,world)