def register

bendvy-ecs-core@0.1.0.4 · ordinary_app_linked_cleanup_system.bend:47

import bendvy-ecs-core@0.1.0.4/ordinary_app_linked_cleanup_system.bend as OrdinaryAppLinkedCleanupSystem
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/ordinary_app_relation.bend as Relation
import bendvy-ecs-core@0.1.0.4/relation_failure_reader.bend as Ord
import bendvy-ecs-core@0.1.0.4/relation_commands.bend as A
import bendvy-ecs-core@0.1.0.4/transaction.bend as T
import bendvy-ecs-core@0.1.0.4/system.bend as Sys
import bendvy-ecs-core@0.1.0.4/ordinary_component_clear_declaration.bend as Clear

47def register(~S:Data,~C:Type,~R:Type,~E:Data,~declarations:List<&2,Ord.Declaration<S>>,~clear:C -> W.Handle<S> -> C & List<&2,A.Notice<S,E>>,~record:W.Handle<S> -> A.Notice<S,E>,~Args:Data,~U:Data,~Out:Data,~body:@-H:Type -> Ops<H,S> -> Args -> H -> H & (T.Outcome<U> & Out),~clearDeclaration:Clear.Declaration<S,C,A.Notice<S,E>,clear>,world:Relation.World(~S,~C,~R,~E),name:String) -> Sys.RegistrationResult<S,A.Store<S,C>,R,A.Notice<S,E>,Args,U,Out,runner(~S,~C,~R,~E,~declarations,~clear,~record,~Args,~U,~Out,~body)>:
48  Sys.register(~S,~A.Store<S,C>,~R,~A.Notice<S,E>,~Args,~U,~Out,~runner(~S,~C,~R,~E,~declarations,~clear,~record,~Args,~U,~Out,~body),world,name,List.append(&2,String,writes(Clear.keys(~S,~C,~A.Notice<S,E>,~clear,clearDeclaration)),relation_accesses(~S,declarations)))

Uses (18)

Used by (1)