def run
bendvy-ecs-core@0.1.0.4 · owned_event_family_reader_runtime.bend:59
import bendvy-ecs-core@0.1.0.4/owned_event_family_reader_runtime.bend as OwnedEventFamilyReaderRuntime
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/transaction.bend as T
import bendvy-ecs-core@0.1.0.4/capabilities.bend as Cap
import bendvy-ecs-core@0.1.0.4/owned_event_log.bend as Log
import bendvy-ecs-core@0.1.0.4/owner_product.bend as Product
import bendvy-ecs-core@0.1.0.4/event_stream.bend as Stream
import bendvy-ecs-core@0.1.0.4/event_family_routing.bend as Route
59def run(~S:Data,~C:Type,~R:Type,~P:Type,~Rest:Type,~E:Data,~path:Product.Lens<R,Log.Log<P>,Rest>,~Request:Type,~Projection:Data,~Args:Type,~Error:Data,~at:P -> Request -> P & Projection,~body:@-H:Type -> @-read:Cap.Request<H,Request,Projection> -> H -> Args -> H & (T.Outcome<Error> & Args),~F:Type,~take:F -> F & Stream.Stream<S,Nat>,~put:F -> Stream.Stream<S,Nat> -> F,~synchronize:W.World<S,C,R,E> -> F -> Nat -> W.World<S,C,R,E> & F,runtime:Route.Runtime<S,C,R,E,F>,reader:Route.Reader<S,Nat,F,take,put>,registry:Sys.Registry<S,C,R,E,Ev.Input<Nat,Args>,Unit,Reply<Error,Args>,runner(~S,~C,~R,~P,~Rest,~E,~path,~Request,~Projection,~Args,~Error,~at,~body)>,args:Args) -> Route.RunResult<S,C,R,E,Nat,F,Args,Unit,Reply<Error,Args>,take,put,runner(~S,~C,~R,~P,~Rest,~E,~path,~Request,~Projection,~Args,~Error,~at,~body)>:
60 match runtime:
61 case Route.Runtime{world,family,tick}:run_taken(~S,~C,~R,~P,~Rest,~E,~path,~Request,~Projection,~Args,~Error,~at,~body,~F,~take,~put,~synchronize,world,tick,reader,registry,args,take(family))