def changed_observed
bendvy-ecs-core@0.1.0.4 · ordinary_condition_composition.bend:46
import bendvy-ecs-core@0.1.0.4/ordinary_condition_composition.bend as OrdinaryConditionComposition
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/ordinary_machine_initialization.bend as Init
import bendvy-ecs-core@0.1.0.4/ordinary_machine_condition.bend as Changed
46def changed_observed(~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,result:Changed.Observed<S,K,V,C,R,E,take,put>) -> Evaluation<W.World<S,C,R,E>,Changed.Instance<S,K,V,C,R,E,take,put>>:
47 match result:
48 case Changed.Observed{world,instance,Some{value}}:Value{world,instance,value}
49 case Changed.Observed{world,instance,None{}}:NoValue{world,instance}
50 case Changed.RegistrationRejected{world,instance}:InvalidRegistration{world,instance}