def with_previous
import bendvy-ecs-core@0.1.0.4/ordinary_app_event_runtime.bend as OrdinaryAppEventRuntimeimport Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/event_runtime.bend as Ev
import bendvy-ecs-core@0.1.0.4/ordinary_app_schema.bend as SchemaApp
import bendvy-ecs-core@0.1.0.4/ordinary_app_composer.bend as Build
import bendvy-ecs-core@0.1.0.4/ordinary_app_registration_fields.bend as Records
import bendvy-ecs-core@0.1.0.4/ordinary_app_observation_data.bend as DTO
import bendvy-ecs-core@0.1.0.4/ordinary_app_access.bend as Access
113# Advanced schema-App action bridge retaining event owners and threading Runtime
114# through Ev.with_world synchronization/tick semantics. Arbitrary action effects
115# are trusted; this is not the observation-only bypass used by population/dump.
116def with_previous(~S:Data,~C:Type,~R:Type,~E:Data,~H:Type,~Rows:Data,~observe:W.World<S,C,R,E> -> W.World<S,C,R,E> & DTO.Observation<Rows>,~fold:H -> H & List<&2,Records.Fields<S>>,~Events:Type,~eventFold:Events -> Events & List<&2,Access.Entry>,~Out:Type,action:SchemaApp.Application<S,C,R,E,H,Rows,observe,fold> -> SchemaApp.Application<S,C,R,E,H,Rows,observe,fold> & Out,app:Application<S,C,R,E,H,Rows,observe,fold,Events,eventFold>) -> Application<S,C,R,E,H,Rows,observe,fold,Events,eventFold> & Out:
117 match app:
118 case Application{schema,runtime,owners,recipe,events,debug}:previous_returned(~S,~C,~R,~E,~H,~Rows,~observe,~fold,~Events,~eventFold,~Out,events,Ev.with_world(~S,~C,~R,~E,~Previous<S,C,R,E,H,Rows,observe,Out>,world => previous_finished(~S,~C,~R,~E,~H,~Rows,~observe,~fold,~Out,action(SchemaApp.Application{schema,Build.Registered{world,owners,recipe,debug}})),runtime))
Uses (13)
Used by (0)
No other definition uses this definition.