| library test /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| class Test1 extends core::Object { |
| field core::int t; |
| field core::int? t2; |
| constructor •(core::int t, core::int? t2) → self::Test1 |
| : self::Test1::t = t, self::Test1::t2 = t2, super core::Object::•() |
| ; |
| method test() → void { |
| core::int v1 = this.{self::Test1::t} = self::getInt(); |
| core::int v4 = let final core::int? #t1 = this.{self::Test1::t2}{core::int?} in #t1 == null ?{core::int} this.{self::Test1::t2} = self::getInt() : #t1{core::int}; |
| core::int v7 = this.{self::Test1::t} = this.{self::Test1::t}{core::int}.{core::num::+}(self::getInt()){(core::num) → core::int}; |
| core::int v10 = this.{self::Test1::t} = this.{self::Test1::t}{core::int}.{core::num::+}(1){(core::num) → core::int}; |
| core::int v11 = let final core::int #t2 = this.{self::Test1::t}{core::int} in let final core::int #t3 = this.{self::Test1::t} = #t2.{core::num::+}(1){(core::num) → core::int} in #t2; |
| } |
| } |
| class Test2 extends core::Object { |
| field core::num t; |
| field core::num? t2; |
| constructor •(core::num t, core::num? t2) → self::Test2 |
| : self::Test2::t = t, self::Test2::t2 = t2, super core::Object::•() |
| ; |
| method test() → void { |
| core::int v1 = this.{self::Test2::t} = self::getInt(); |
| core::num v2 = this.{self::Test2::t} = self::getNum(); |
| core::double v3 = this.{self::Test2::t} = self::getDouble(); |
| core::num v4 = let final core::num? #t4 = this.{self::Test2::t2}{core::num?} in #t4 == null ?{core::num} this.{self::Test2::t2} = self::getInt() : #t4{core::num}; |
| core::num v5 = let final core::num? #t5 = this.{self::Test2::t2}{core::num?} in #t5 == null ?{core::num} this.{self::Test2::t2} = self::getNum() : #t5{core::num}; |
| core::num v6 = let final core::num? #t6 = this.{self::Test2::t2}{core::num?} in #t6 == null ?{core::num} this.{self::Test2::t2} = self::getDouble() : #t6{core::num}; |
| core::num v7 = this.{self::Test2::t} = this.{self::Test2::t}{core::num}.{core::num::+}(self::getInt()){(core::num) → core::num}; |
| core::num v8 = this.{self::Test2::t} = this.{self::Test2::t}{core::num}.{core::num::+}(self::getNum()){(core::num) → core::num}; |
| core::double v9 = this.{self::Test2::t} = this.{self::Test2::t}{core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double}; |
| core::num v10 = this.{self::Test2::t} = this.{self::Test2::t}{core::num}.{core::num::+}(1){(core::num) → core::num}; |
| core::num v11 = let final core::num #t7 = this.{self::Test2::t}{core::num} in let final core::num #t8 = this.{self::Test2::t} = #t7.{core::num::+}(1){(core::num) → core::num} in #t7; |
| } |
| } |
| class Test3 extends core::Object { |
| field core::double t; |
| field core::double? t2; |
| constructor •(core::double t, core::double? t2) → self::Test3 |
| : self::Test3::t = t, self::Test3::t2 = t2, super core::Object::•() |
| ; |
| method test3() → void { |
| core::double v3 = this.{self::Test3::t} = self::getDouble(); |
| core::double v6 = let final core::double? #t9 = this.{self::Test3::t2}{core::double?} in #t9 == null ?{core::double} this.{self::Test3::t2} = self::getDouble() : #t9{core::double}; |
| core::double v7 = this.{self::Test3::t} = this.{self::Test3::t}{core::double}.{core::double::+}(self::getInt()){(core::num) → core::double}; |
| core::double v8 = this.{self::Test3::t} = this.{self::Test3::t}{core::double}.{core::double::+}(self::getNum()){(core::num) → core::double}; |
| core::double v9 = this.{self::Test3::t} = this.{self::Test3::t}{core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double}; |
| core::double v10 = this.{self::Test3::t} = this.{self::Test3::t}{core::double}.{core::double::+}(1){(core::num) → core::double}; |
| core::double v11 = let final core::double #t10 = this.{self::Test3::t}{core::double} in let final core::double #t11 = this.{self::Test3::t} = #t10.{core::double::+}(1){(core::num) → core::double} in #t10; |
| } |
| } |
| 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 {} |