OrdinaryQueryDeclaration.constructed_write: def of bendvy-ecs-core@0.1.0.4 Import: import bendvy-ecs-core@0.1.0.4/ordinary_query_declaration.bend as OrdinaryQueryDeclaration Lines 50-56 of bendvy-ecs-core@0.1.0.4/ordinary_query_declaration.bend: https://jend.leeeet.dev/read.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_query_declaration.bend&start_line=50&end_line=56 import Base import bendvy-ecs-core@0.1.0.4/persistence_declaration.bend as Recipe import bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend as Identity import bendvy-ecs-core@0.1.0.4/declared_family.bend as Family import bendvy-ecs-core@0.1.0.4/snapshot_leaf.bend as Leaf import bendvy-ecs-core@0.1.0.4/decode_data.bend as D import bendvy-ecs-core@0.1.0.4/compose.bend as Q import bendvy-ecs-core@0.1.0.4/capabilities.bend as Cap # Constructed-component counterpart of write, using the declaration-bound save recipe. # take/put must preserve the matching Leaf.Component and all remaining storage. # Requires presence and grants transactional payload replacement, including rollback. # Failed sets retain an error in Frame; Compose reports AccessError and rolls back. # The set grant consumes P and does not return rejected input to the caller. def constructed_write(~S:Data,~P:Type,~Store:Type,~R:Type,~E:Data,~Rest:Type,~V:Data,~Token:Data,~identity:Identity.Declaration,~save:P -> P & D.Raw,~view:P -> P & V,~take:Store -> Rest & Leaf.Component,~put:Rest -> Leaf.Component -> Store) -> Declaration,Cap.Write,P,V>>: Declaration{Q.write_family(~S,~Store,~R,~E,~(Rest & Recipe.Constructed),~P,~V,~Token,~Family.take_column(~S,~P,~Store,~Rest,~identity,~save,~take),~Family.put_column(~S,~P,~Store,~Rest,~identity,~save,~put),~view,~Family.family(~S,~P,~Store,~Rest,~V,~Token,~identity,~save,~view,~take,~put)),Q.family_match(~S,~Store,~R,~E,~(Rest & Recipe.Constructed),~P,~V,~Token,~Family.take_column(~S,~P,~Store,~Rest,~identity,~save,~take),~Family.put_column(~S,~P,~Store,~Rest,~identity,~save,~put),~view,~Family.family(~S,~P,~Store,~Rest,~V,~Token,~identity,~save,~view,~take,~put),~Q.Required{}),[Clause{Identity.key(~S,~P,identity),Write{}}]} Uses (18): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/capabilities.bend&name=Write https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/compose.bend&name=Frame https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/compose.bend&name=Selection https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/compose.bend&name=family_match https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/compose.bend&name=write_family https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/declared_family.bend&name=family https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/declared_family.bend&name=put_column https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/declared_family.bend&name=take_column https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_data.bend&name=Raw https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend&name=Declaration https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend&name=key https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_query_declaration.bend&name=Clause https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_query_declaration.bend&name=Declaration https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_query_declaration.bend&name=Mode https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/persistence_declaration.bend&name=Constructed https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/snapshot_leaf.bend&name=Component