def execution_plan

bendvy-ecs-core@0.1.0.4 · ordinary_app_service_registration.bend:74

import bendvy-ecs-core@0.1.0.4/ordinary_app_service_registration.bend as OrdinaryAppServiceRegistration
import Base
import bendvy-ecs-core@0.1.0.4/schedule.bend as Sch
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/system.bend as Sys
import bendvy-ecs-core@0.1.0.4/schedule_provision.bend as SP
import bendvy-ecs-core@0.1.0.4/ordinary_service_declaration.bend as D

74# Advanced owner-returning plan: this registry id at condition slot zero with
75# the declaration's service requirement. Does not invoke P or derive a query grant.
76def execution_plan(~S:Data,~C:Type,~R:Type,~E:Data,~Payload:Type,~Rest:Type,~take:R -> Rest & D.Slot<Payload>,~put:Rest -> D.Slot<Payload> -> R,~call:Payload -> Payload,~declaration:D.Declaration<S,R,Payload,Rest,take,put,call>,~scan:W.World<S,C,R,E> -> W.World<S,C,R,E> & List<&2,D.Status<S>>,owner:Owner<S,C,R,E,Payload,Rest,take,put,call,declaration,scan>) -> Owner<S,C,R,E,Payload,Rest,take,put,call,declaration,scan> & SP.Plan<S>:
77  match owner:
78    case Owner{Sys.Registry{+namespace,+id,+name,+access,+cursor},setup}:(Owner{Sys.Registry{namespace,id,name,access,cursor},setup},SP.Entry{Sch.System{id,0},[required(~S,~C,~R,~E,~Payload,~Rest,~take,~put,~call,~declaration,~scan)]})

Uses (12)

Used by (2)