def traversal_queried

bendvy-ecs-core@0.1.0.3 · execution_query_interpreter.bend:190

import bendvy-ecs-core@0.1.0.3/execution_query_interpreter.bend as ExecutionQueryInterpreter
import Base
import bendvy-ecs-core@0.1.0.3/execution_query.bend as Q
import bendvy-ecs-core@0.1.0.3/execution_state.bend as State
import bendvy-ecs-core@0.1.0.3/execution_effects.bend as Effects
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as L

190def traversal_queried(~S:Data,~Permit:Data,~F:Type -> Type,~effects:Effects.Effects<F>,~full:L.Layout,~route:L.Route,~R:Type,~O:Type,~E:Data,~body:Q.SequentialGeneralBody(~S,~Permit,~F,~L.payload(full,route),~L.view(full,route),~O,~E),mode:Q.Mode,output:O,targets:Q.GeneralTargets<S>,result:State.Scope<S,L.columns(~S,full),R> & Q.GeneralReport<S,L.view(full,route)>) -> F(State.Scope<S,L.columns(~S,full),R> & (O & Q.Report<E>)):
191  match targets result:
192    case _, (scope,Q.SelectionRefused{}):Effects.pure(~F,State.Scope<S,L.columns(~S,full),R> & (O & Q.Report<E>),effects,(scope,(output,Q.LayoutRefused{})))
193    case Q.AllMatched{}, (State.Scope{columns,resource,handles,tick,prior,view},Q.SelectedRows{rows}):traversal_taken(~S,~Permit,~F,~effects,~full,~route,~R,~O,~E,~body,resource,handles,tick,prior,view,mode,Q.AllMatched{},rows,output,L.column_take(~S,full,route,columns))
194    case Q.ExplicitHandles{requested}, (scope,Q.SelectedRows{+rows}):traversal_requested(~S,~Permit,~F,~effects,~full,~route,~R,~O,~E,~body,scope,mode,rows,output,selected_handles(~S,~L.view(full,route),rows),requested)

Uses (19)

Used by (1)