def component_record

bendvy-ecs-core@0.1.0.4 · restore_storage.bend:23

import bendvy-ecs-core@0.1.0.4/restore_storage.bend as RestoreStorage
import Base
import bendvy-ecs-core@0.1.0.4/change_tick.bend as Tick
import bendvy-ecs-core@0.1.0.4/restore_data.bend as R
import bendvy-ecs-core@0.1.0.4/restore_leaf.bend as Stage
import bendvy-ecs-core@0.1.0.4/column.bend as Col

23def component_record(~S:Data,~Context:Type,~I:Type,~P:Type,record:Stage.Record<I,P>,state:Stage.State<Context,I,P>,column:Col.Column<S,P>,+bindings:List<&2,R.Binding<S>>,tick:Tick.Tick) -> Col.Column<S,P> & Stage.State<Context,I,P>:
24  match record state:
25    case Stage.Record{R.Component{+saved},owner,undo} state:mapped(~S,~Context,~I,~P,saved,owner,undo,state,column,tick,R.lookup(~S,saved,bindings))
26    case record Stage.State{context,records,returned,removed,applied}:(column,Stage.State{context,record <> records,returned,removed,applied})

Uses (11)

Used by (1)