| library test /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| abstract class Test1a extends core::Object { |
| synthetic constructor •() → self::Test1a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::int; |
| abstract operator []=(core::String s, core::int v) → void; |
| method test() → void { |
| core::int v1 = let final core::String #t1 = "x" in let final core::int #t2 = self::getInt() in let final void #t3 = this.{self::Test1a::[]=}(#t1, #t2){(core::String, core::int) → void} in #t2; |
| core::int v7 = let final core::String #t4 = "x" in let final core::int #t5 = this.{self::Test1a::[]}(#t4){(core::String) → core::int}.{core::num::+}(self::getInt()){(core::num) → core::int} in let final void #t6 = this.{self::Test1a::[]=}(#t4, #t5){(core::String, core::int) → void} in #t5; |
| core::int v10 = let final core::String #t7 = "x" in let final core::int #t8 = this.{self::Test1a::[]}(#t7){(core::String) → core::int}.{core::num::+}(1){(core::num) → core::int} in let final void #t9 = this.{self::Test1a::[]=}(#t7, #t8){(core::String, core::int) → void} in #t8; |
| core::int v11 = let final core::String #t10 = "x" in let final core::int #t11 = this.{self::Test1a::[]}(#t10){(core::String) → core::int} in let final void #t12 = this.{self::Test1a::[]=}(#t10, #t11.{core::num::+}(1){(core::num) → core::int}){(core::String, core::int) → void} in #t11; |
| } |
| } |
| abstract class Test1b extends core::Object { |
| synthetic constructor •() → self::Test1b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::int?; |
| abstract operator []=(core::String s, core::int? v) → void; |
| method test() → void { |
| core::int v4 = let final core::String #t13 = "x" in let final core::int? #t14 = this.{self::Test1b::[]}(#t13){(core::String) → core::int?} in #t14 == null ?{core::int} let final core::int #t15 = self::getInt() in let final void #t16 = this.{self::Test1b::[]=}(#t13, #t15){(core::String, core::int?) → void} in #t15 : #t14{core::int}; |
| } |
| } |
| abstract class Test2a extends core::Object { |
| synthetic constructor •() → self::Test2a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::int; |
| abstract operator []=(core::String s, core::num v) → void; |
| method test() → void { |
| core::int v1 = let final core::String #t17 = "x" in let final core::int #t18 = self::getInt() in let final void #t19 = this.{self::Test2a::[]=}(#t17, #t18){(core::String, core::num) → void} in #t18; |
| core::num v2 = let final core::String #t20 = "x" in let final core::num #t21 = self::getNum() in let final void #t22 = this.{self::Test2a::[]=}(#t20, #t21){(core::String, core::num) → void} in #t21; |
| core::double v3 = let final core::String #t23 = "x" in let final core::double #t24 = self::getDouble() in let final void #t25 = this.{self::Test2a::[]=}(#t23, #t24){(core::String, core::num) → void} in #t24; |
| core::int v7 = let final core::String #t26 = "x" in let final core::int #t27 = this.{self::Test2a::[]}(#t26){(core::String) → core::int}.{core::num::+}(self::getInt()){(core::num) → core::int} in let final void #t28 = this.{self::Test2a::[]=}(#t26, #t27){(core::String, core::num) → void} in #t27; |
| core::num v8 = let final core::String #t29 = "x" in let final core::num #t30 = this.{self::Test2a::[]}(#t29){(core::String) → core::int}.{core::num::+}(self::getNum()){(core::num) → core::num} in let final void #t31 = this.{self::Test2a::[]=}(#t29, #t30){(core::String, core::num) → void} in #t30; |
| core::double v9 = let final core::String #t32 = "x" in let final core::double #t33 = this.{self::Test2a::[]}(#t32){(core::String) → core::int}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t34 = this.{self::Test2a::[]=}(#t32, #t33){(core::String, core::num) → void} in #t33; |
| core::int v10 = let final core::String #t35 = "x" in let final core::int #t36 = this.{self::Test2a::[]}(#t35){(core::String) → core::int}.{core::num::+}(1){(core::num) → core::int} in let final void #t37 = this.{self::Test2a::[]=}(#t35, #t36){(core::String, core::num) → void} in #t36; |
| core::int v11 = let final core::String #t38 = "x" in let final core::int #t39 = this.{self::Test2a::[]}(#t38){(core::String) → core::int} in let final void #t40 = this.{self::Test2a::[]=}(#t38, #t39.{core::num::+}(1){(core::num) → core::int}){(core::String, core::num) → void} in #t39; |
| } |
| } |
| abstract class Test2b extends core::Object { |
| synthetic constructor •() → self::Test2b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::int?; |
| abstract operator []=(core::String s, core::num? v) → void; |
| method test() → void { |
| core::int v4 = let final core::String #t41 = "x" in let final core::int? #t42 = this.{self::Test2b::[]}(#t41){(core::String) → core::int?} in #t42 == null ?{core::int} let final core::int #t43 = self::getInt() in let final void #t44 = this.{self::Test2b::[]=}(#t41, #t43){(core::String, core::num?) → void} in #t43 : #t42{core::int}; |
| core::num v5 = let final core::String #t45 = "x" in let final core::int? #t46 = this.{self::Test2b::[]}(#t45){(core::String) → core::int?} in #t46 == null ?{core::num} let final core::num #t47 = self::getNum() in let final void #t48 = this.{self::Test2b::[]=}(#t45, #t47){(core::String, core::num?) → void} in #t47 : #t46{core::int}; |
| core::num v6 = let final core::String #t49 = "x" in let final core::int? #t50 = this.{self::Test2b::[]}(#t49){(core::String) → core::int?} in #t50 == null ?{core::num} let final core::double #t51 = self::getDouble() in let final void #t52 = this.{self::Test2b::[]=}(#t49, #t51){(core::String, core::num?) → void} in #t51 : #t50{core::int}; |
| } |
| } |
| abstract class Test3a extends core::Object { |
| synthetic constructor •() → self::Test3a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::int; |
| abstract operator []=(core::String s, core::double v) → void; |
| method test() → void { |
| core::double v3 = let final core::String #t53 = "x" in let final core::double #t54 = self::getDouble() in let final void #t55 = this.{self::Test3a::[]=}(#t53, #t54){(core::String, core::double) → void} in #t54; |
| core::double v9 = let final core::String #t56 = "x" in let final core::double #t57 = this.{self::Test3a::[]}(#t56){(core::String) → core::int}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t58 = this.{self::Test3a::[]=}(#t56, #t57){(core::String, core::double) → void} in #t57; |
| core::double v10 = let final core::String #t59 = "x" in let final core::double #t60 = this.{self::Test3a::[]}(#t59){(core::String) → core::int}.{core::num::+}(1.0){(core::num) → core::double} in let final void #t61 = this.{self::Test3a::[]=}(#t59, #t60){(core::String, core::double) → void} in #t60; |
| core::int v11 = let final core::String #t62 = "x" in let final core::int #t63 = this.{self::Test3a::[]}(#t62){(core::String) → core::int} in let final void #t64 = this.{self::Test3a::[]=}(#t62, #t63.{core::num::+}(1.0){(core::num) → core::double}){(core::String, core::double) → void} in #t63; |
| } |
| } |
| abstract class Test3b extends core::Object { |
| synthetic constructor •() → self::Test3b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::int?; |
| abstract operator []=(core::String s, core::double? v) → void; |
| method test() → void { |
| core::num v6 = let final core::String #t65 = "x" in let final core::int? #t66 = this.{self::Test3b::[]}(#t65){(core::String) → core::int?} in #t66 == null ?{core::num} let final core::double #t67 = self::getDouble() in let final void #t68 = this.{self::Test3b::[]=}(#t65, #t67){(core::String, core::double?) → void} in #t67 : #t66{core::int}; |
| } |
| } |
| abstract class Test4a extends core::Object { |
| synthetic constructor •() → self::Test4a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::num; |
| abstract operator []=(core::String s, core::int v) → void; |
| method test() → void { |
| core::int v1 = let final core::String #t69 = "x" in let final core::int #t70 = self::getInt() in let final void #t71 = this.{self::Test4a::[]=}(#t69, #t70){(core::String, core::int) → void} in #t70; |
| } |
| } |
| abstract class Test4b extends core::Object { |
| synthetic constructor •() → self::Test4b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::num?; |
| abstract operator []=(core::String s, core::int? v) → void; |
| method test() → void { |
| core::num v4 = let final core::String #t72 = "x" in let final core::num? #t73 = this.{self::Test4b::[]}(#t72){(core::String) → core::num?} in #t73 == null ?{core::num} let final core::int #t74 = self::getInt() in let final void #t75 = this.{self::Test4b::[]=}(#t72, #t74){(core::String, core::int?) → void} in #t74 : #t73{core::num}; |
| } |
| } |
| abstract class Test5a extends core::Object { |
| synthetic constructor •() → self::Test5a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::num; |
| abstract operator []=(core::String s, core::num v) → void; |
| method test() → void { |
| core::int v1 = let final core::String #t76 = "x" in let final core::int #t77 = self::getInt() in let final void #t78 = this.{self::Test5a::[]=}(#t76, #t77){(core::String, core::num) → void} in #t77; |
| core::num v2 = let final core::String #t79 = "x" in let final core::num #t80 = self::getNum() in let final void #t81 = this.{self::Test5a::[]=}(#t79, #t80){(core::String, core::num) → void} in #t80; |
| core::double v3 = let final core::String #t82 = "x" in let final core::double #t83 = self::getDouble() in let final void #t84 = this.{self::Test5a::[]=}(#t82, #t83){(core::String, core::num) → void} in #t83; |
| core::num v7 = let final core::String #t85 = "x" in let final core::num #t86 = this.{self::Test5a::[]}(#t85){(core::String) → core::num}.{core::num::+}(self::getInt()){(core::num) → core::num} in let final void #t87 = this.{self::Test5a::[]=}(#t85, #t86){(core::String, core::num) → void} in #t86; |
| core::num v8 = let final core::String #t88 = "x" in let final core::num #t89 = this.{self::Test5a::[]}(#t88){(core::String) → core::num}.{core::num::+}(self::getNum()){(core::num) → core::num} in let final void #t90 = this.{self::Test5a::[]=}(#t88, #t89){(core::String, core::num) → void} in #t89; |
| core::double v9 = let final core::String #t91 = "x" in let final core::double #t92 = this.{self::Test5a::[]}(#t91){(core::String) → core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t93 = this.{self::Test5a::[]=}(#t91, #t92){(core::String, core::num) → void} in #t92; |
| core::num v10 = let final core::String #t94 = "x" in let final core::num #t95 = this.{self::Test5a::[]}(#t94){(core::String) → core::num}.{core::num::+}(1){(core::num) → core::num} in let final void #t96 = this.{self::Test5a::[]=}(#t94, #t95){(core::String, core::num) → void} in #t95; |
| core::num v11 = let final core::String #t97 = "x" in let final core::num #t98 = this.{self::Test5a::[]}(#t97){(core::String) → core::num} in let final void #t99 = this.{self::Test5a::[]=}(#t97, #t98.{core::num::+}(1){(core::num) → core::num}){(core::String, core::num) → void} in #t98; |
| } |
| } |
| abstract class Test5b extends core::Object { |
| synthetic constructor •() → self::Test5b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::num?; |
| abstract operator []=(core::String s, core::num? v) → void; |
| method test() → void { |
| core::num v4 = let final core::String #t100 = "x" in let final core::num? #t101 = this.{self::Test5b::[]}(#t100){(core::String) → core::num?} in #t101 == null ?{core::num} let final core::int #t102 = self::getInt() in let final void #t103 = this.{self::Test5b::[]=}(#t100, #t102){(core::String, core::num?) → void} in #t102 : #t101{core::num}; |
| core::num v5 = let final core::String #t104 = "x" in let final core::num? #t105 = this.{self::Test5b::[]}(#t104){(core::String) → core::num?} in #t105 == null ?{core::num} let final core::num #t106 = self::getNum() in let final void #t107 = this.{self::Test5b::[]=}(#t104, #t106){(core::String, core::num?) → void} in #t106 : #t105{core::num}; |
| core::num v6 = let final core::String #t108 = "x" in let final core::num? #t109 = this.{self::Test5b::[]}(#t108){(core::String) → core::num?} in #t109 == null ?{core::num} let final core::double #t110 = self::getDouble() in let final void #t111 = this.{self::Test5b::[]=}(#t108, #t110){(core::String, core::num?) → void} in #t110 : #t109{core::num}; |
| } |
| } |
| abstract class Test6a extends core::Object { |
| synthetic constructor •() → self::Test6a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::num; |
| abstract operator []=(core::String s, core::double v) → void; |
| method test() → void { |
| core::double v3 = let final core::String #t112 = "x" in let final core::double #t113 = self::getDouble() in let final void #t114 = this.{self::Test6a::[]=}(#t112, #t113){(core::String, core::double) → void} in #t113; |
| core::double v9 = let final core::String #t115 = "x" in let final core::double #t116 = this.{self::Test6a::[]}(#t115){(core::String) → core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t117 = this.{self::Test6a::[]=}(#t115, #t116){(core::String, core::double) → void} in #t116; |
| core::double v10 = let final core::String #t118 = "x" in let final core::double #t119 = this.{self::Test6a::[]}(#t118){(core::String) → core::num}.{core::num::+}(1.0){(core::num) → core::double} in let final void #t120 = this.{self::Test6a::[]=}(#t118, #t119){(core::String, core::double) → void} in #t119; |
| core::num v11 = let final core::String #t121 = "x" in let final core::num #t122 = this.{self::Test6a::[]}(#t121){(core::String) → core::num} in let final void #t123 = this.{self::Test6a::[]=}(#t121, #t122.{core::num::+}(1.0){(core::num) → core::double}){(core::String, core::double) → void} in #t122; |
| } |
| } |
| abstract class Test6b extends core::Object { |
| synthetic constructor •() → self::Test6b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::num?; |
| abstract operator []=(core::String s, core::double? v) → void; |
| method test() → void { |
| core::num v6 = let final core::String #t124 = "x" in let final core::num? #t125 = this.{self::Test6b::[]}(#t124){(core::String) → core::num?} in #t125 == null ?{core::num} let final core::double #t126 = self::getDouble() in let final void #t127 = this.{self::Test6b::[]=}(#t124, #t126){(core::String, core::double?) → void} in #t126 : #t125{core::num}; |
| } |
| } |
| abstract class Test7a extends core::Object { |
| synthetic constructor •() → self::Test7a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::double; |
| abstract operator []=(core::String s, core::int v) → void; |
| method test() → void { |
| core::int v1 = let final core::String #t128 = "x" in let final core::int #t129 = self::getInt() in let final void #t130 = this.{self::Test7a::[]=}(#t128, #t129){(core::String, core::int) → void} in #t129; |
| } |
| } |
| abstract class Test7b extends core::Object { |
| synthetic constructor •() → self::Test7b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::double?; |
| abstract operator []=(core::String s, core::int? v) → void; |
| method test() → void { |
| core::num v4 = let final core::String #t131 = "x" in let final core::double? #t132 = this.{self::Test7b::[]}(#t131){(core::String) → core::double?} in #t132 == null ?{core::num} let final core::int #t133 = self::getInt() in let final void #t134 = this.{self::Test7b::[]=}(#t131, #t133){(core::String, core::int?) → void} in #t133 : #t132{core::double}; |
| } |
| } |
| abstract class Test8a extends core::Object { |
| synthetic constructor •() → self::Test8a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::double; |
| abstract operator []=(core::String s, core::num v) → void; |
| method test() → void { |
| core::int v1 = let final core::String #t135 = "x" in let final core::int #t136 = self::getInt() in let final void #t137 = this.{self::Test8a::[]=}(#t135, #t136){(core::String, core::num) → void} in #t136; |
| core::num v2 = let final core::String #t138 = "x" in let final core::num #t139 = self::getNum() in let final void #t140 = this.{self::Test8a::[]=}(#t138, #t139){(core::String, core::num) → void} in #t139; |
| core::double v3 = let final core::String #t141 = "x" in let final core::double #t142 = self::getDouble() in let final void #t143 = this.{self::Test8a::[]=}(#t141, #t142){(core::String, core::num) → void} in #t142; |
| core::double v7 = let final core::String #t144 = "x" in let final core::double #t145 = this.{self::Test8a::[]}(#t144){(core::String) → core::double}.{core::double::+}(self::getInt()){(core::num) → core::double} in let final void #t146 = this.{self::Test8a::[]=}(#t144, #t145){(core::String, core::num) → void} in #t145; |
| core::double v8 = let final core::String #t147 = "x" in let final core::double #t148 = this.{self::Test8a::[]}(#t147){(core::String) → core::double}.{core::double::+}(self::getNum()){(core::num) → core::double} in let final void #t149 = this.{self::Test8a::[]=}(#t147, #t148){(core::String, core::num) → void} in #t148; |
| core::double v9 = let final core::String #t150 = "x" in let final core::double #t151 = this.{self::Test8a::[]}(#t150){(core::String) → core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double} in let final void #t152 = this.{self::Test8a::[]=}(#t150, #t151){(core::String, core::num) → void} in #t151; |
| core::double v10 = let final core::String #t153 = "x" in let final core::double #t154 = this.{self::Test8a::[]}(#t153){(core::String) → core::double}.{core::double::+}(1){(core::num) → core::double} in let final void #t155 = this.{self::Test8a::[]=}(#t153, #t154){(core::String, core::num) → void} in #t154; |
| core::double v11 = let final core::String #t156 = "x" in let final core::double #t157 = this.{self::Test8a::[]}(#t156){(core::String) → core::double} in let final void #t158 = this.{self::Test8a::[]=}(#t156, #t157.{core::double::+}(1){(core::num) → core::double}){(core::String, core::num) → void} in #t157; |
| } |
| } |
| abstract class Test8b extends core::Object { |
| synthetic constructor •() → self::Test8b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::double?; |
| abstract operator []=(core::String s, core::num? v) → void; |
| method test() → void { |
| core::num v4 = let final core::String #t159 = "x" in let final core::double? #t160 = this.{self::Test8b::[]}(#t159){(core::String) → core::double?} in #t160 == null ?{core::num} let final core::int #t161 = self::getInt() in let final void #t162 = this.{self::Test8b::[]=}(#t159, #t161){(core::String, core::num?) → void} in #t161 : #t160{core::double}; |
| core::num v5 = let final core::String #t163 = "x" in let final core::double? #t164 = this.{self::Test8b::[]}(#t163){(core::String) → core::double?} in #t164 == null ?{core::num} let final core::num #t165 = self::getNum() in let final void #t166 = this.{self::Test8b::[]=}(#t163, #t165){(core::String, core::num?) → void} in #t165 : #t164{core::double}; |
| core::double v6 = let final core::String #t167 = "x" in let final core::double? #t168 = this.{self::Test8b::[]}(#t167){(core::String) → core::double?} in #t168 == null ?{core::double} let final core::double #t169 = self::getDouble() in let final void #t170 = this.{self::Test8b::[]=}(#t167, #t169){(core::String, core::num?) → void} in #t169 : #t168{core::double}; |
| } |
| } |
| abstract class Test9a extends core::Object { |
| synthetic constructor •() → self::Test9a |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::double; |
| abstract operator []=(core::String s, core::double v) → void; |
| method test() → void { |
| core::double v3 = let final core::String #t171 = "x" in let final core::double #t172 = self::getDouble() in let final void #t173 = this.{self::Test9a::[]=}(#t171, #t172){(core::String, core::double) → void} in #t172; |
| core::double v7 = let final core::String #t174 = "x" in let final core::double #t175 = this.{self::Test9a::[]}(#t174){(core::String) → core::double}.{core::double::+}(self::getInt()){(core::num) → core::double} in let final void #t176 = this.{self::Test9a::[]=}(#t174, #t175){(core::String, core::double) → void} in #t175; |
| core::double v8 = let final core::String #t177 = "x" in let final core::double #t178 = this.{self::Test9a::[]}(#t177){(core::String) → core::double}.{core::double::+}(self::getNum()){(core::num) → core::double} in let final void #t179 = this.{self::Test9a::[]=}(#t177, #t178){(core::String, core::double) → void} in #t178; |
| core::double v9 = let final core::String #t180 = "x" in let final core::double #t181 = this.{self::Test9a::[]}(#t180){(core::String) → core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double} in let final void #t182 = this.{self::Test9a::[]=}(#t180, #t181){(core::String, core::double) → void} in #t181; |
| core::double v10 = let final core::String #t183 = "x" in let final core::double #t184 = this.{self::Test9a::[]}(#t183){(core::String) → core::double}.{core::double::+}(1){(core::num) → core::double} in let final void #t185 = this.{self::Test9a::[]=}(#t183, #t184){(core::String, core::double) → void} in #t184; |
| core::double v11 = let final core::String #t186 = "x" in let final core::double #t187 = this.{self::Test9a::[]}(#t186){(core::String) → core::double} in let final void #t188 = this.{self::Test9a::[]=}(#t186, #t187.{core::double::+}(1){(core::num) → core::double}){(core::String, core::double) → void} in #t187; |
| } |
| } |
| abstract class Test9b extends core::Object { |
| synthetic constructor •() → self::Test9b |
| : super core::Object::•() |
| ; |
| abstract operator [](core::String s) → core::double?; |
| abstract operator []=(core::String s, core::double? v) → void; |
| method test() → void { |
| core::double v6 = let final core::String #t189 = "x" in let final core::double? #t190 = this.{self::Test9b::[]}(#t189){(core::String) → core::double?} in #t190 == null ?{core::double} let final core::double #t191 = self::getDouble() in let final void #t192 = this.{self::Test9b::[]=}(#t189, #t191){(core::String, core::double?) → void} in #t191 : #t190{core::double}; |
| } |
| } |
| 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 {} |