def completed
bendvy-ecs-core@0.1.0.4 · ordinary_machine_condition.bend:36
import bendvy-ecs-core@0.1.0.4/ordinary_machine_condition.bend as OrdinaryMachineCondition
import Base
import bendvy-ecs-core@0.1.0.4/ordinary_machine_initialization.bend as Init
import bendvy-ecs-core@0.1.0.4/system.bend as Sys
36def completed(~S:Data,~K:Data,~V:Data,~R:Type,~take:R -> R & Init.State<S,K,V>,~put:R -> Init.State<S,K,V> -> R,~C:Type,~E:Data,prior:Nat,result:Sys.RunResult<S,C,R,E,Nat,Unit,Nat & Bool,runner(~S,~K,~V,~R,~take,~put,~C,~E)>) -> Observed<S,K,V,C,R,E,take,put>:
37 match result:
38 case Sys.Completed{registry,Sys.Succeeded{world,(revision,value)}}:Observed{world,Instance{registry,revision},Some{value}}
39 case Sys.Completed{registry,Sys.Failed{world,_}}:Observed{world,Instance{registry,prior},None{}}
40 case Sys.RegistrationRejected{registry,world,_}:RegistrationRejected{world,Instance{registry,prior}}