def run

bendvy-ecs-core@0.1.0.4 · event_family_routing.bend:168

import bendvy-ecs-core@0.1.0.4/event_family_routing.bend as EventFamilyRouting
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/system.bend as Sys
import bendvy-ecs-core@0.1.0.4/event_runtime.bend as Ev
import bendvy-ecs-core@0.1.0.4/trace_facts.bend as Facts
import bendvy-ecs-core@0.1.0.4/event_stream.bend as Leaf

168# Untraced routing using the same identity/registry admission and ownership path.
169# Every Sys.Succeeded output is accepted here; adapters encoding semantic failure
170# in O must reconcile it or use run_traced with an acceptance callback.
171# Rejected returns Args, Failed does not promise consumed Args recovery. Tick
172# changes follow the routing branch, not an ordinary lifecycle-reader cursor.
173def run(~S:Data,~C:Type,~R:Type,~P:Data,~E:Data,~F:Type,~A:Type,~Error:Data,~O:Type,~take:F -> F & Leaf.Stream<S,E>,~put:F -> Leaf.Stream<S,E> -> F,~runner:W.World<S,C,R,P> -> Ev.Input<E,A> -> Sys.Outcome<W.World<S,C,R,P>,Error,O>,~synchronize:W.World<S,C,R,P> -> F -> Nat -> W.World<S,C,R,P> & F,runtime:Runtime<S,C,R,P,F>,reader:Reader<S,E,F,take,put>,registry:Sys.Registry<S,C,R,P,Ev.Input<E,A>,Error,O,runner>,args:A) -> RunResult<S,C,R,P,E,F,A,Error,O,take,put,runner>:
174  without_trace(~S,~C,~R,~P,~E,~F,~A,~Error,~O,~take,~put,~runner,run_traced(~S,~C,~R,~P,~E,~F,~A,~Error,~O,~take,~put,~runner,~unobserved(~S,~C,~R,~P,~E,~F,~A,~Error,~O,~take,~put,~runner),~accept_all(~O),~synchronize,runtime,reader,registry,args,Facts.Off{}))

Uses (15)

Used by (3)