def column_taken

bendvy-ecs-core@0.1.0.3 · execution_recoverable_component.bend:39

import bendvy-ecs-core@0.1.0.3/execution_recoverable_component.bend as ExecutionRecoverableComponent
import Base
import bendvy-ecs-core@0.1.0.3/chunk_column.bend as Column
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/lifecycle.bend as Life
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick

39def column_taken(~S:Data,~C:Type,~layout:Layout.Layout,~route:Layout.Route,~same:{C == Layout.columns(~S,layout) : Type},+index:U32,incoming:Maybe<Layout.payload(layout,route)>,tick:Tick.Tick,saved:Maybe<&2,Life.Stamp>,result:Layout.column_rest(~S,layout,route) & Column.Column<S,Layout.stored(layout,route)>) -> C & Exchange<Layout.payload(layout,route)>:
40  match result:
41    case (rest,column):column_returned(~S,~C,~layout,~route,~same,rest,observed(~S,~layout,~route,index,incoming,tick,saved,Column.lifecycle(~S,~Layout.stored(layout,route),column,index)))

Uses (17)

Used by (1)