def layout_take
bendvy-ecs-core@0.1.0.3 · execution_query.bend:70
import bendvy-ecs-core@0.1.0.3/execution_query.bend as ExecutionQuery
import Base
import bendvy-ecs-core@0.1.0.3/chunk_column.bend as Col
import bendvy-ecs-core@0.1.0.3/owner_product.bend as Product
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
70def layout_take(~S:Data,~C: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},owner:C) -> Layout.subtree_rest(~S,layout,route) & Product.Owner<Col.Column<S,Layout.stored(Layout.subtree(layout,route),Layout.InLeft{Layout.AtLeaf{}})>,Col.Column<S,Layout.stored(Layout.subtree(layout,route),Layout.InRight{Layout.AtLeaf{}})>>:
71 layout_selected(~S,~layout,~route,~shape,Layout.subtree_take(~S,layout,route,Layout.checked_owner(C,Layout.columns(~S,layout),same,owner)))