| library test /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| class Test1 extends core::Object { |
| field core::int prop = 0; |
| field core::int? prop2 = null; |
| synthetic constructor •() → self::Test1 |
| : super core::Object::•() |
| ; |
| static method test(self::Test1 t) → void { |
| core::int v1 = t.{self::Test1::prop} = self::getInt(); |
| core::int v4 = let final self::Test1 #t1 = t in let final core::int? #t2 = #t1.{self::Test1::prop2}{core::int?} in #t2 == null ?{core::int} #t1.{self::Test1::prop2} = self::getInt() : #t2{core::int}; |
| core::int v7 = let final self::Test1 #t3 = t in #t3.{self::Test1::prop} = #t3.{self::Test1::prop}{core::int}.{core::num::+}(self::getInt()){(core::num) → core::int}; |
| core::int v10 = let final self::Test1 #t4 = t in #t4.{self::Test1::prop} = #t4.{self::Test1::prop}{core::int}.{core::num::+}(1){(core::num) → core::int}; |
| core::int v11 = let final self::Test1 #t5 = t in let final core::int #t6 = #t5.{self::Test1::prop}{core::int} in let final core::int #t7 = #t5.{self::Test1::prop} = #t6.{core::num::+}(1){(core::num) → core::int} in #t6; |
| } |
| } |
| class Test2 extends core::Object { |
| field core::num prop = 0; |
| field core::num? prop2 = null; |
| synthetic constructor •() → self::Test2 |
| : super core::Object::•() |
| ; |
| static method test(self::Test2 t) → void { |
| core::int v1 = t.{self::Test2::prop} = self::getInt(); |
| core::num v2 = t.{self::Test2::prop} = self::getNum(); |
| core::double v3 = t.{self::Test2::prop} = self::getDouble(); |
| core::num v4 = let final self::Test2 #t8 = t in let final core::num? #t9 = #t8.{self::Test2::prop2}{core::num?} in #t9 == null ?{core::num} #t8.{self::Test2::prop2} = self::getInt() : #t9{core::num}; |
| core::num v5 = let final self::Test2 #t10 = t in let final core::num? #t11 = #t10.{self::Test2::prop2}{core::num?} in #t11 == null ?{core::num} #t10.{self::Test2::prop2} = self::getNum() : #t11{core::num}; |
| core::num v6 = let final self::Test2 #t12 = t in let final core::num? #t13 = #t12.{self::Test2::prop2}{core::num?} in #t13 == null ?{core::num} #t12.{self::Test2::prop2} = self::getDouble() : #t13{core::num}; |
| core::num v7 = let final self::Test2 #t14 = t in #t14.{self::Test2::prop} = #t14.{self::Test2::prop}{core::num}.{core::num::+}(self::getInt()){(core::num) → core::num}; |
| core::num v8 = let final self::Test2 #t15 = t in #t15.{self::Test2::prop} = #t15.{self::Test2::prop}{core::num}.{core::num::+}(self::getNum()){(core::num) → core::num}; |
| core::double v9 = let final self::Test2 #t16 = t in #t16.{self::Test2::prop} = #t16.{self::Test2::prop}{core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double}; |
| core::num v10 = let final self::Test2 #t17 = t in #t17.{self::Test2::prop} = #t17.{self::Test2::prop}{core::num}.{core::num::+}(1){(core::num) → core::num}; |
| core::num v11 = let final self::Test2 #t18 = t in let final core::num #t19 = #t18.{self::Test2::prop}{core::num} in let final core::num #t20 = #t18.{self::Test2::prop} = #t19.{core::num::+}(1){(core::num) → core::num} in #t19; |
| } |
| } |
| class Test3 extends core::Object { |
| field core::double prop = 0.0; |
| field core::double? prop2 = null; |
| synthetic constructor •() → self::Test3 |
| : super core::Object::•() |
| ; |
| static method test3(self::Test3 t) → void { |
| core::double v3 = t.{self::Test3::prop} = self::getDouble(); |
| core::double v6 = let final self::Test3 #t21 = t in let final core::double? #t22 = #t21.{self::Test3::prop2}{core::double?} in #t22 == null ?{core::double} #t21.{self::Test3::prop2} = self::getDouble() : #t22{core::double}; |
| core::double v7 = let final self::Test3 #t23 = t in #t23.{self::Test3::prop} = #t23.{self::Test3::prop}{core::double}.{core::double::+}(self::getInt()){(core::num) → core::double}; |
| core::double v8 = let final self::Test3 #t24 = t in #t24.{self::Test3::prop} = #t24.{self::Test3::prop}{core::double}.{core::double::+}(self::getNum()){(core::num) → core::double}; |
| core::double v9 = let final self::Test3 #t25 = t in #t25.{self::Test3::prop} = #t25.{self::Test3::prop}{core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double}; |
| core::double v10 = let final self::Test3 #t26 = t in #t26.{self::Test3::prop} = #t26.{self::Test3::prop}{core::double}.{core::double::+}(1){(core::num) → core::double}; |
| core::double v11 = let final self::Test3 #t27 = t in let final core::double #t28 = #t27.{self::Test3::prop}{core::double} in let final core::double #t29 = #t27.{self::Test3::prop} = #t28.{core::double::+}(1){(core::num) → core::double} in #t28; |
| } |
| } |
| static method getInt() → core::int |
| return 0; |
| static method getNum() → core::num |
| return 0; |
| static method getDouble() → core::double |
| return 0.0; |
| static method main() → dynamic {} |