def take_join
bendvy-ecs-core@0.1.0.4 · machine_world.bend:8
import bendvy-ecs-core@0.1.0.4/machine_world.bend as MachineWorld
import Base
import bendvy-ecs-core@0.1.0.4/clock_state.bend as Clock
import bendvy-ecs-core@0.1.0.4/deferred_command.bend as Deferred
import entity_allocator.bend as Alloc
import machine.bend as M
import world.bend as W
8
9
10def take_join(~S: Data,~K: Data,~V: Data,~C: Type,~R: Type,~E: Data,
11 +ns: U32,allocator:Alloc.Allocator,
12 store: C,split: R & M.Slot<S,K,V>,+events: List<&2,E>,commands:List<&1,Deferred.Command<W.World<S,C,R,E>>>,
13 +registrations: List<&2,W.RegistrationMeta>,+nextSystem: U32,+clock:Clock.State
14) -> W.World<S,C,R,E> & M.Slot<S,K,V>:
15 (resources,slot)=split
16 (W.World{ns,allocator,store,resources,events,commands,registrations,nextSystem,clock},slot)