def presented_barrier_app

bendvy-ecs-core@0.1.0.4 · ordinary_app_relation.bend:140

import bendvy-ecs-core@0.1.0.4/ordinary_app_relation.bend as OrdinaryAppRelation
import Base
import bendvy-ecs-core@0.1.0.4/ordinary_app_composer.bend as Build
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_registration_fields.bend as Fields
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/relation_failure_reader.bend as Ord
import bendvy-ecs-core@0.1.0.4/relation_commands.bend as A

140# Apply the World structural barrier, returning the App with its owners and recipe.
141# This drains pending World commands, not only commands for this declaration;
142# structural relation failures are published as notices by their command handlers.
143def presented_barrier_app(~S:Data,~C:Type,~R:Type,~E:Data,~declaration:Ord.Declaration<S>,~render:Row(~S) -> String,~Owners:Type,~Rows:Data,~prior:World(~S,~C,~R,~E) -> World(~S,~C,~R,~E) & DTO.Observation<Rows>,~fold:Owners -> Owners & List<&2,Fields.Fields<S>>,app:presented_Application(~S,~C,~R,~E,~declaration,~render,~Owners,~Rows,~prior,~fold)) -> presented_Application(~S,~C,~R,~E,~declaration,~render,~Owners,~Rows,~prior,~fold):
144  match app:
145    case Build.Registered{world,owners,recipe,debug}:Build.Registered{W.barrier(~S,~A.Store<S,C>,~R,~A.Notice<S,E>,world),owners,recipe,debug}

Uses (13)

Used by (1)