def resource_write_build

bendvy-ecs-core@0.1.0.3 · execution_builder.bend:143

import bendvy-ecs-core@0.1.0.3/execution_builder.bend as ExecutionBuilder
import Base
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_layout_access.bend as LayoutAccess
import bendvy-ecs-core@0.1.0.3/execution_access.bend as A
import bendvy-ecs-core@0.1.0.3/execution_resource_recipe.bend as Resources

143def resource_write_build(~S:Data,~C:Type,~R:Type,~layout:Layout.Layout,~route:Layout.Route,~same:{R == Layout.resources(~S,layout) : Type},~valid:{Layout.resource_write_valid(~layout,~route) == True{} : Bool},book:Book) -> Book & A.ResourceWrite<State.Scope<S,C,R>,Layout.payload(layout,route),Layout.view(layout,route)>:
144  accumulate(S,C,R,A.ResourceWrites(~Layout.payload(layout,route),~Layout.view(layout,route)),record_resource(book,Resources.Entry{route,Layout.key(layout,route),Resources.Writable{}}),LayoutAccess.resource_write(~S,~C,~R,~layout,~route,~same,~valid))

Uses (18)

Used by (2)