def prepared

bendvy-ecs-core@0.1.0.4 · machine_handler_engine.bend:79

import bendvy-ecs-core@0.1.0.4/machine_handler_engine.bend as MachineHandlerEngine
import Base
import bendvy-ecs-core@0.1.0.4/system.bend as Sys
import bendvy-ecs-core@0.1.0.4/machine.bend as M

79def prepared(~S:Data,~State:Type,~Entry:Type,~Phase:Data,~V:Data,~invoke:Entry -> State -> Phase -> V -> V -> Entry & Sys.Outcome<State,String,Unit>,~initial:Entry -> State -> V -> Entry & Sys.Outcome<State,String,Unit>,~exitPhase:Phase,~transitionPhase:Phase,~enterPhase:Phase,~K:Data,~take:State -> State & M.Slot<S,K,V>,~put:State -> M.Slot<S,K,V> -> State,~publish:State -> M.Transition<V> -> State,owners:Owners<Entry>,world:State,prepared:Prepared<S,K,V>) -> HandlerResult<State,Entry,Phase>:
80  match owners prepared:
81    case owners Idle{slot}: Completed{owners,put(world,slot)}
82    case Owners{exit,transition,enter} BendvyReady{slot,M.Initial{to},_}:after_enter(~S,~State,~Entry,~Phase,~V,~invoke,~initial,~exitPhase,~transitionPhase,~enterPhase,exit,transition,run_initial(~S,~State,~Entry,~Phase,~V,~invoke,~initial,~exitPhase,~transitionPhase,~enterPhase,enter,put(world,slot),to,None{}))
83    case Owners{exit,transition,enter} BendvyReady{slot,M.Transition{+from,+to},skipSame}: after_exit(~S,~State,~Entry,~Phase,~V,~invoke,~initial,~exitPhase,~transitionPhase,~enterPhase,~K,~take,~put,~publish,transition,enter,run_phase(~S,~State,~Entry,~Phase,~V,~invoke,~initial,~exitPhase,~transitionPhase,~enterPhase,exit,put(world,slot),exitPhase,from,to,None{}),from,to,skipSame)

Uses (14)

Used by (1)