OrdinaryLifetimeScope.register: def of bendvy-ecs-core@0.1.0.4 Import: import bendvy-ecs-core@0.1.0.4/ordinary_lifetime_scope.bend as OrdinaryLifetimeScope Lines 120-126 of bendvy-ecs-core@0.1.0.4/ordinary_lifetime_scope.bend: https://jend.leeeet.dev/read.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_lifetime_scope.bend&start_line=120&end_line=126 import Base import bendvy-ecs-core@0.1.0.4/lifetime_scope.bend as Sc import bendvy-ecs-core@0.1.0.4/world.bend as W import bendvy-ecs-core@0.1.0.4/relation_commands.bend as A import bendvy-ecs-core@0.1.0.4/relation_failure_reader.bend as Rel import bendvy-ecs-core@0.1.0.4/ordinary_app_linked_cleanup_system.bend as LCS import bendvy-ecs-core@0.1.0.4/ordinary_component_clear_declaration.bend as Clear import bendvy-ecs-core@0.1.0.4/transaction.bend as T import bendvy-ecs-core@0.1.0.4/system.bend as Sys # Register a scope system with access derived from the component-clear # certificate, relation declarations and LifetimeScope:write. Returns the ordinary # Registry registration result with the returned World on success or refusal. # Registration runs no body and applies no spawn/cleanup. Supply the matching # trusted populate/clear routes, then retain the actual returned Registry for run. def register(~S:Data,~C:Type,~R:Type,~E:Data,~P:Type,~populate:W.World>,R,A.Notice> -> W.Handle -> P -> W.World>,R,A.Notice>,~clear:C -> W.Handle -> C & List<&2,A.Notice>,~record:W.Handle -> A.Notice,~declarations:List<&2,Rel.Declaration>,~Args:Type,~Error:Data,~Out:Type,~body:@-H:Type -> @-ops:Ops -> Args -> H -> H & (T.Outcome & Out),~clearDeclaration:Clear.Declaration,clear>,world:W.World>,R,A.Notice>,name:String) -> Sys.RegistrationResult>,R,A.Notice,Args,Error,Out,runner(~S,~C,~R,~E,~P,~populate,~clear,~record,~declarations,~Args,~Error,~Out,~body)>: Sys.register(~S,~A.Store>,~R,~A.Notice,~Args,~Error,~Out,~runner(~S,~C,~R,~E,~P,~populate,~clear,~record,~declarations,~Args,~Error,~Out,~body),world,name,List.append(&2,String,LCS.writes(Clear.keys(~S,~C,~A.Notice,~clear,clearDeclaration)),List.append(&2,String,LCS.relation_accesses(~S,declarations),["LifetimeScope:write"]))) Uses (19): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List.append https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/lifetime_scope.bend&name=Store https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_app_linked_cleanup_system.bend&name=relation_accesses https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_app_linked_cleanup_system.bend&name=writes https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_component_clear_declaration.bend&name=Declaration https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_component_clear_declaration.bend&name=keys https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_lifetime_scope.bend&name=Ops https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_lifetime_scope.bend&name=runner https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/relation_commands.bend&name=Notice https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/relation_commands.bend&name=Store https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/relation_failure_reader.bend&name=Declaration https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/system.bend&name=RegistrationResult https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/system.bend&name=register https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/transaction.bend&name=Outcome https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/world.bend&name=Handle https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/world.bend&name=World