CapturedScheduleCondition.execute: def of bendvy-ecs-core@0.1.0.4 Import: import bendvy-ecs-core@0.1.0.4/captured_schedule_condition.bend as CapturedScheduleCondition Lines 42-47 of bendvy-ecs-core@0.1.0.4/captured_schedule_condition.bend: https://jend.leeeet.dev/read.txt?path=bendvy-ecs-core@0.1.0.4/captured_schedule_condition.bend&start_line=42&end_line=47 import Base import bendvy-ecs-core@0.1.0.4/world.bend as W import bendvy-ecs-core@0.1.0.4/schedule.bend as Sch import bendvy-ecs-core@0.1.0.4/schedule_provision.bend as SP import bendvy-ecs-core@0.1.0.4/captured_schedule.bend as Run import bendvy-ecs-core@0.1.0.4/captured_schedule_composition.bend as Comp import bendvy-ecs-core@0.1.0.4/ordinary_condition_composition.bend as Cond def execute(~S:Data,~C:Type,~R:Type,~E:Data,~H:Type,~B:Type,~Error:Data,~catalog:H -> H & List<&2,Comp.Identity>,~dispatch:H -> W.World -> U32 -> Comp.Outcome,H,Error>,~select:B -> W.World -> U32 -> Cond.Evaluation,B>,steps:List<&2,Sch.Step>,owners:H,conditions:Cond.Bindings,B,select>,world:W.World,+name:String,+plan:SP.Plan,+observations:List<&2,Sch.Observation>) -> Run.Run,Owned,S,Cond.Error>: match steps: case []:Run.Finished{world,Owned{name,plan,owners,conditions},observations} case Sch.Phase{phase} <> rest:execute(~S,~C,~R,~E,~H,~B,~Error,~catalog,~dispatch,~select,rest,owners,conditions,world,name,plan,List.append(&2,Sch.Observation,observations,[Sch.Entered{phase}])) case Sch.Barrier{} <> rest:execute(~S,~C,~R,~E,~H,~B,~Error,~catalog,~dispatch,~select,rest,owners,conditions,W.barrier(~S,~C,~R,~E,world),name,plan,List.append(&2,Sch.Observation,observations,[Sch.Applied{}])) case Sch.System{+id,_} <> rest:condition_run(~S,~C,~R,~E,~H,~B,~Error,~catalog,~dispatch,~select,h => c => w => logs => execute(~S,~C,~R,~E,~H,~B,~Error,~catalog,~dispatch,~select,rest,h,c,w,name,plan,logs),owners,conditions,world,name,plan,id,observations) Uses (18): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List.append https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/captured_schedule.bend&name=Run https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/captured_schedule_composition.bend&name=Identity https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/captured_schedule_composition.bend&name=Outcome https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/captured_schedule_condition.bend&name=Owned https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/captured_schedule_condition.bend&name=condition_run https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_condition_composition.bend&name=Bindings https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_condition_composition.bend&name=Error https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_condition_composition.bend&name=Evaluation https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/schedule.bend&name=Observation https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/schedule.bend&name=Step https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/schedule_provision.bend&name=Plan https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/world.bend&name=World https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/world.bend&name=barrier