1 private@ 2 3 type A = 4 var u : i32 = 0 5 var from : i32 = 0 6 var to : i32 = 0 7 8 observe@ u { prev_x x -> 9 assert u == x 10 from = prev_x 11 to = x } 12 13 do 14 let a = A.new 15 a.u = 7 16 assert a.from == 0 && a.to == 7 17 18 a.u = 8 19 assert a.from == 7 && a.to == 8 20