def context_take
bendvy-ecs-core@0.1.0.4 · machine_handler_context.bend:45
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
45def context_take(~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>,~K:Data,~take:W.World<S,C,R,E> -> W.World<S,C,R,E> & M.Slot<S,K,V>,context:Ctx.Context<W.World<S,C,R,E>>) -> Ctx.Context<W.World<S,C,R,E>> & M.Slot<S,K,V>:
46 match context:
47 case Ctx.Context{world,trace}:taken(~S,~C,~R,~E,~V,~runner,~K,trace,take(world))