def define_mixed
bendvy-ecs-core@0.1.0.4 · ordinary_reader_system.bend:307
import bendvy-ecs-core@0.1.0.4/ordinary_reader_system.bend as OrdinaryReaderSystem
import Base
import bendvy-ecs-core@0.1.0.4/change_tick.bend as Tick
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/transaction.bend as Tx
import bendvy-ecs-core@0.1.0.4/reader_parameter.bend as RP
import bendvy-ecs-core@0.1.0.4/event_notice_runtime.bend as Mixed
import bendvy-ecs-core@0.1.0.4/event_family_routing.bend as Route
import bendvy-ecs-core@0.1.0.4/relation_commands.bend as Notice
import bendvy-ecs-core@0.1.0.4/internal/relation_failures/domains.bend as D
307def define_mixed(~S:Data,~C:Type,~R:Type,~P:Data,~F:Type,~H:Type,
308 ~Reader:Type,~View:Data,~Delta:Type,~Args:Type,~Declaration:Type,~Failure:Data,~Output:Type,
309 ~validateFn:Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> -> Reader -> Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> & (Reader & Bool),
310 ~prepareFn:Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> -> @+cursor:Maybe<&2,Tick.Tick> -> Reader -> Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> & (Reader & (View & Delta)),
311 ~commitFn:Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> -> Reader -> Delta -> @+cursor:Tick.Tick -> Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> & Reader,~releaseFn:Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> -> Reader -> Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,
312 ~Ops:Type -> Type,
313 ~body:@-K:Type -> @-caps:Ops(K) -> (View & Args) -> K -> K & (Tx.Outcome<Failure> & Output),
314 ~grant:Ops(Tx.Tx<W.World<S,C,R,Notice.Notice<S,P>>,Notice.Notice<S,P>>),
315 ~sync:F -> Nat -> List<&2,P> -> F,
316 ~classify:Notice.Notice<S,P> -> Maybe<D.DescriptorKey<S>>,
317 ~initialize:Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> -> RP.RegistrationFacts -> Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>> & (Reader & RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>),
318 descriptor:RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,
319 declaration:Declaration,context:Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,name:String) -> Definition<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Provider<Sys.Registry<S,C,R,Notice.Notice<S,P>,Invocation<(Mixed.State<S,P,F,H> & Nat),Reader,RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,Declaration,Args>,Empty,Envelope<(Mixed.State<S,P,F,H> & Nat),Reader,RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,Declaration,Failure,Output>,shared_runner(~S,~C,~R,~P,~F,~H,~Reader,~View,~Delta,~Args,~Declaration,~Failure,~Output,~validateFn,~prepareFn,~commitFn,~releaseFn,~Ops,~body,~grant,~sync,~classify)>,Reader,RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,Declaration>,RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,Declaration>:
320 define_access(~S,~C,~R,~Notice.Notice<S,P>,~Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,~(Mixed.State<S,P,F,H> & Nat),~Reader,~View,~Delta,~Args,~Declaration,~Failure,~Output,~RP.RegistrationFacts,~validateFn,~prepareFn,~commitFn,~releaseFn,~Mixed.split(~S,~C,~R,~P,~F,~H),~Mixed.join(~S,~C,~R,~P,~F,~H),~shared_runner(~S,~C,~R,~P,~F,~H,~Reader,~View,~Delta,~Args,~Declaration,~Failure,~Output,~validateFn,~prepareFn,~commitFn,~releaseFn,~Ops,~body,~grant,~sync,~classify),~RP.registration_facts(~S,~C,~R,~Notice.Notice<S,P>,~Invocation<(Mixed.State<S,P,F,H> & Nat),Reader,RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,Declaration,Args>,~Empty,~Envelope<(Mixed.State<S,P,F,H> & Nat),Reader,RP.Param<Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,Reader,View,Delta,validateFn,prepareFn,commitFn,releaseFn>,Declaration,Failure,Output>,~shared_runner(~S,~C,~R,~P,~F,~H,~Reader,~View,~Delta,~Args,~Declaration,~Failure,~Output,~validateFn,~prepareFn,~commitFn,~releaseFn,~Ops,~body,~grant,~sync,~classify)),~initialize,declaration,context,name,RP.access(~Route.Runtime<S,C,R,Notice.Notice<S,P>,Mixed.State<S,P,F,H>>,~Reader,~View,~Delta,~validateFn,~prepareFn,~commitFn,~releaseFn,descriptor))