def snapshot

bendvy-ecs-core@0.1.0.4 · ordinary_app_service.bend:48

import bendvy-ecs-core@0.1.0.4/ordinary_app_service.bend as OrdinaryAppService
import Base
import bendvy-ecs-core@0.1.0.4/ordinary_service_declaration.bend as D
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/system.bend as Sys

48# Return App with optional detached Inventory. Disabled bypasses scan entirely;
49# enabled scans availability without calling the service. Trusted setup callbacks
50# remain responsible for owner-preserving observation.
51def snapshot(~S:Data,~C:Type,~R:Type,~E:Data,~runner:W.World<S,C,R,E> -> Unit -> Sys.Outcome<W.World<S,C,R,E>,Unit,Unit>,~scan:W.World<S,C,R,E> -> W.World<S,C,R,E> & List<&2,D.Status<S>>,app:Application<S,C,R,E,runner,scan>) -> Application<S,C,R,E,runner,scan> & Maybe<&2,Inventory<S>>:
52  match app:
53    case Application{setup,plan,scheduled,world,False{}}:(Application{setup,plan,scheduled,world,False{}},None{})
54    case Application{setup,plan,scheduled,world,True{}}:described(~S,~C,~R,~E,~runner,~scan,setup,plan,scheduled,scan(world))

Uses (12)

Used by (1)