def sequential_output_invoke_targets

bendvy-ecs-core@0.1.0.3 · execution_query.bend:197

import bendvy-ecs-core@0.1.0.3/execution_query.bend as ExecutionQuery
import Base
import bendvy-ecs-core@0.1.0.3/execution_effects.bend as Effects
import bendvy-ecs-core@0.1.0.3/execution_query_identity.bend as Index
import bendvy-ecs-core@0.1.0.3/execution_query_domain.bend as Domain
import bendvy-ecs-core@0.1.0.3/execution_state.bend as State
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout

197def sequential_output_invoke_targets(~S:Data,~Permit:Data,~F:Type -> Type,~effects:Effects.Effects<F>,~C:Type,~R:Type,~layout:Layout.Layout,~route:Layout.Route,~same:{C == Layout.columns(~S,layout) : Type},~shape:{Layout.columns(~S,Layout.subtree(layout,route)) == Layout.query_pair(~S,~layout,~route) : Type},~O:Type,~E:Data,~body:SequentialOutputBody(~S,~Permit,~F,~layout,~route,~O,~E),mode:Mode,scope:State.Scope<S,C,R>,output:O,targets:Index.TargetCheck<S>) -> F(State.Scope<S,C,R> & (O & Report<E>)):
198  match scope targets:
199    case State.Scope{store,resource,handles,tick,prior,+lifecycleView} Index.Targets{_,Domain.Domain{selected}}:sequential_output_taken(~S,~Permit,~F,~effects,~C,~R,~layout,~route,~same,~shape,~O,~E,~body,output,resource,handles,tick,prior,mode,selected,layout_take(~S,~C,~layout,~route,~same,~shape,store),lifecycleView)
200    case scope Index.Refused{_}:Effects.pure(~F,(State.Scope<S,C,R> & (O & Report<E>)),effects,(scope,(output,LayoutRefused{})))

Uses (17)

Used by (1)