def context_publish

bendvy-ecs-core@0.1.0.4 · machine_handler_context.bend:55

import bendvy-ecs-core@0.1.0.4/machine_handler_context.bend as MachineHandlerContext
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/machine.bend as M
import bendvy-ecs-core@0.1.0.4/system.bend as Sys
import bendvy-ecs-core@0.1.0.4/execution_context.bend as Ctx
import bendvy-ecs-core@0.1.0.4/machine_handlers.bend as H

55def context_publish(~S:Data,~C:Type,~R:Type,~E:Data,~V:Data,~runner:W.World<S,C,R,E> -> H.Invocation<V> -> Sys.Outcome<W.World<S,C,R,E>,String,Unit>,~publish:W.World<S,C,R,E> -> M.Transition<V> -> W.World<S,C,R,E>,~name:String,context:Ctx.Context<W.World<S,C,R,E>>,transition:M.Transition<V>) -> Ctx.Context<W.World<S,C,R,E>>:
56  match context:
57    case Ctx.Context{world,trace}:Ctx.Context{publish(world,transition),transition_record(trace,name)}

Uses (8)

Used by (5)