def read_lens_right

bendvy-ecs-core@0.1.0.3 · execution_layout_access.bend:50

import bendvy-ecs-core@0.1.0.3/execution_layout_access.bend as ExecutionLayoutAccess
import Base
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/owner_product.bend as Product

50def read_lens_right(-S:Data,-left:Layout.Layout,-right:Layout.Layout,-route:Layout.Route,lens:Product.Lens<Layout.resources_generic(S,right),read_slot_type(S,right,route),Layout.resource_rest_generic(S,right,route)>) -> Product.Lens<Layout.resources_generic(S,Layout.LayoutPair{left,right}),read_slot_type(S,Layout.LayoutPair{left,right},Layout.InRight{route}),Layout.resource_rest_generic(S,Layout.LayoutPair{left,right},Layout.InRight{route})>:
51  match lens:
52    case Product.Lens{take,put}:Product.Lens{owner => read_lens_right_take(S,left,right,route,take,owner),rest => slot => read_lens_right_put(S,left,right,route,put,rest,slot)}

Uses (8)

Used by (1)