def component_fields_owned

bendvy-ecs-core@0.1.0.4 · snapshot_leaf.bend:32

import bendvy-ecs-core@0.1.0.4/snapshot_leaf.bend as SnapshotLeaf
import Base
import bendvy-ecs-core@0.1.0.4/decode_data.bend as D
import bendvy-ecs-core@0.1.0.4/column.bend as Col
import bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend as Canonical

32def component_fields_owned(~S:Data,~P:Type,~identity:Canonical.Declaration<S,P>,~project:P -> P & D.Raw,+id:U32,value:Component<S,P,identity,project>) -> Component<S,P,identity,project> & List<&2,D.Field>:
33  match value:
34    case Component{column,declaration}:component_taken(~S,~P,~identity,~project,id,declaration,Col.swap(~S,~P,column,id,None{}))

Uses (10)

Used by (1)