def output_provider_selection
bendvy-ecs-core@0.1.0.3 · execution_builder.bend:233
import bendvy-ecs-core@0.1.0.3/execution_builder.bend as ExecutionBuilder
import Base
import bendvy-ecs-core@0.1.0.3/world.bend as W
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
import bendvy-ecs-core@0.1.0.3/execution_query.bend as Q
import bendvy-ecs-core@0.1.0.3/execution_query_recipe.bend as Recipe
import bendvy-ecs-core@0.1.0.3/execution_query_matches.bend as Match
233def output_provider_selection(~S:Data,~WC:Type,~C:Type,~R:Type,~F:Type -> Type,~full:Layout.Layout,~route:Layout.Route,~same:{WC == Layout.columns(~S,full) : Type},~valid:{Layout.grant_valid(~full,~route) == True{} : Bool},~local:{C == Layout.columns(~S,full) : Type},~bound:Recipe.Bound,~presence:Match.Presence,~predicate:Maybe<&2,Layout.view(full,route)> -> Bool,~O:Type,~E:Data,~body:W.Handle<S> -> Layout.view(full,route) -> Layout.payload(full,route) -> O -> Layout.payload(full,route) & (O & Maybe<&2,E>),~ordinary:OrdinaryGeneralProvider(~S,~WC,~C,~R),~output:OutputGeneralProvider(~S,~WC,~C,~R),~sequential:SequentialGeneralProvider(~S,~WC,~C,~R,~F)) -> Q.GeneralOutputWriter<S,State.Scope<S,C,R>,Layout.payload(full,route),Layout.view(full,route),O,E>:
234 output(full,route,same,valid,local,bound,presence,predicate,O,E,body)