def component_constructed
bendvy-ecs-core@0.1.0.3 · execution_save_traversal.bend:24
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
24def component_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>,id:U32,owner:Layout.columns(~S,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access}))) -> Decl.Constructed<S,P,Plan.identity(~S,~P,key),project> & (Layout.columns(~S,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access})) & Saved.Fields):
25 match declaration:
26 case Decl.Constructed{+codec}:retained(Decl.Constructed<S,P,Plan.identity(~S,~P,key),project>,Layout.columns(~S,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access})),Decl.Constructed{codec},Field.component(S,P,V,key,Plan.layout(Plan.Constructed{P,V,refresh,key,project,access}),Field.Constructed{codec},project,owner,id))