def family_selected

bendvy-ecs-core@0.1.0.3 · execution_command_publication.bend:85

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

85def family_selected(~S:Data,~R:Type,~E:Data,~layout:Layout.Layout,~route:Layout.Route,allocator:A.Allocator,remainder:Remainder<S,Layout.columns(~S,layout),R,E>,+handle:W.Handle<S>,incoming:Maybe<&1,Layout.payload(layout,route)>,+tick:Tick.Tick,result:Layout.column_rest(~S,layout,route) & Layout.ColumnSlot<S,Layout.stored(layout,route),Layout.key(layout,route),Layout.origin(layout,route)>) -> W.World<S,Layout.columns(~S,layout),R,E> & Buffer.Receipt<S,Layout.payload(layout,route),Removed.Removed(layout)>:
86  match remainder result:
87    case Remainder{+namespace,resource,events,pending,registrations,nextSystemId,clock,lifecycle}, (rest,Layout.ColumnSlot{column}):family_restored(~S,~R,~E,~layout,~route,rest,Remainder{namespace,resource,events,pending,registrations,nextSystemId,clock,lifecycle},namespaced(~S,~layout,~route,allocator,column,handle,incoming,tick,U32.is_eq(namespace,handle_namespace(~S,handle))),tick,handle)

Uses (23)

Used by (1)