def resource_constructed
bendvy-ecs-core@0.1.0.3 · execution_save_traversal.bend:27
import bendvy-ecs-core@0.1.0.3/execution_save_traversal.bend as ExecutionSaveTraversal
import Base
import bendvy-ecs-core@0.1.0.3/execution_save_plan.bend as Plan
import bendvy-ecs-core@0.1.0.3/execution_save_layout_field.bend as Field
import bendvy-ecs-core@0.1.0.3/execution_save_data.bend as Saved
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/persistence_declaration.bend as Decl
import bendvy-ecs-core@0.1.0.3/decode_data.bend as D
import bendvy-ecs-core@0.1.0.3/execution_resource_policy.bend as Policy
27def resource_constructed(~S:Data,-P:Type,-V:Data,-refresh:P -> P & V,+key:String,project:P -> P & D.Raw,access:Policy.Policy,declaration:Decl.Constructed<S,P,Plan.identity(~S,~P,key),project>,owner:Layout.resources(~S,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access}))) -> Decl.Constructed<S,P,Plan.identity(~S,~P,key),project> & (Layout.resources(~S,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access})) & Saved.Fields):
28 match declaration:
29 case Decl.Constructed{+codec}:retained(Decl.Constructed<S,P,Plan.identity(~S,~P,key),project>,Layout.resources(~S,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access})),Decl.Constructed{codec},Field.resource(S,P,V,key,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access}),Field.Constructed{codec},project,owner))