OLD | NEW |
1 library test; | 1 library test; |
2 import self as self; | 2 import self as self; |
3 import "dart:core" as core; | 3 import "dart:core" as core; |
4 | 4 |
5 class Index extends core::Object { | 5 class Index extends core::Object { |
6 constructor •() → void | 6 default constructor •() → void |
7 : super core::Object::•() | 7 : super core::Object::•() |
8 ; | 8 ; |
9 } | 9 } |
10 class A extends core::Object { | 10 class A extends core::Object { |
11 constructor •() → void | 11 default constructor •() → void |
12 : super core::Object::•() | 12 : super core::Object::•() |
13 ; | 13 ; |
14 operator +(self::F v) → self::C | 14 operator +(self::F v) → self::C |
15 return null; | 15 return null; |
16 operator -(core::int i) → self::C | 16 operator -(core::int i) → self::C |
17 return null; | 17 return null; |
18 } | 18 } |
19 class B extends self::A { | 19 class B extends self::A { |
20 constructor •() → void | 20 default constructor •() → void |
21 : super self::A::•() | 21 : super self::A::•() |
22 ; | 22 ; |
23 operator +(self::E v) → self::D | 23 operator +(self::E v) → self::D |
24 return null; | 24 return null; |
25 operator -(core::int i) → self::D | 25 operator -(core::int i) → self::D |
26 return null; | 26 return null; |
27 } | 27 } |
28 class C extends self::B { | 28 class C extends self::B { |
29 constructor •() → void | 29 default constructor •() → void |
30 : super self::B::•() | 30 : super self::B::•() |
31 ; | 31 ; |
32 } | 32 } |
33 class D extends self::C { | 33 class D extends self::C { |
34 constructor •() → void | 34 default constructor •() → void |
35 : super self::C::•() | 35 : super self::C::•() |
36 ; | 36 ; |
37 } | 37 } |
38 class E extends self::D { | 38 class E extends self::D { |
39 constructor •() → void | 39 default constructor •() → void |
40 : super self::D::•() | 40 : super self::D::•() |
41 ; | 41 ; |
42 } | 42 } |
43 class F extends self::E { | 43 class F extends self::E { |
44 constructor •() → void | 44 default constructor •() → void |
45 : super self::E::•() | 45 : super self::E::•() |
46 ; | 46 ; |
47 } | 47 } |
48 class Test extends core::Object { | 48 class Test extends core::Object { |
49 constructor •() → void | 49 default constructor •() → void |
50 : super core::Object::•() | 50 : super core::Object::•() |
51 ; | 51 ; |
52 operator [](self::Index i) → self::B | 52 operator [](self::Index i) → self::B |
53 return null; | 53 return null; |
54 operator []=(self::Index i, self::A v) → void {} | 54 operator []=(self::Index i, self::A v) → void {} |
55 method test() → void { | 55 method test() → void { |
56 self::Test t = self::f<self::Test>(); | 56 self::Test t = self::f<self::Test>(); |
57 t.{self::Test::[]=}(self::f<dynamic>(), self::f<self::A>()); | 57 t.{self::Test::[]=}(self::f<dynamic>(), self::f<self::A>()); |
58 let final dynamic #t1 = t in let final dynamic #t2 = self::f<dynamic>() in #
t1.{self::Test::[]}(#t2).{core::Object::==}(null) ? let final dynamic #t3 = self
::f<self::A>() in let final dynamic #t4 = #t1.{self::Test::[]=}(#t2, #t3) in #t3
: null; | 58 let final dynamic #t1 = t in let final dynamic #t2 = self::f<dynamic>() in #
t1.{self::Test::[]}(#t2).{core::Object::==}(null) ? let final dynamic #t3 = self
::f<self::A>() in let final dynamic #t4 = #t1.{self::Test::[]=}(#t2, #t3) in #t3
: null; |
59 let final dynamic #t5 = t in let final dynamic #t6 = self::f<dynamic>() in #
t5.{self::Test::[]=}(#t6, #t5.{self::Test::[]}(#t6).{self::A::+}(self::f<dynamic
>())); | 59 let final dynamic #t5 = t in let final dynamic #t6 = self::f<dynamic>() in #
t5.{self::Test::[]=}(#t6, #t5.{self::Test::[]}(#t6).{self::A::+}(self::f<dynamic
>())); |
60 let final dynamic #t7 = t in let final dynamic #t8 = self::f<dynamic>() in l
et final dynamic #t9 = #t7.{self::Test::[]}(#t8).{self::A::-}(1) in let final dy
namic #t10 = #t7.{self::Test::[]=}(#t8, #t9) in #t9; | 60 let final dynamic #t7 = t in let final dynamic #t8 = self::f<dynamic>() in l
et final dynamic #t9 = #t7.{self::Test::[]}(#t8).{self::A::-}(1) in let final dy
namic #t10 = #t7.{self::Test::[]=}(#t8, #t9) in #t9; |
61 let final dynamic #t11 = t in let final dynamic #t12 = self::f<dynamic>() in
#t11.{self::Test::[]=}(#t12, #t11.{self::Test::[]}(#t12).{self::A::-}(1)); | 61 let final dynamic #t11 = t in let final dynamic #t12 = self::f<dynamic>() in
#t11.{self::Test::[]=}(#t12, #t11.{self::Test::[]}(#t12).{self::A::-}(1)); |
62 self::A v1 = let final dynamic #t13 = t in let final dynamic #t14 = self::f<
dynamic>() in let final dynamic #t15 = self::f<self::A>() in let final dynamic #
t16 = #t13.{self::Test::[]=}(#t14, #t15) in #t15; | 62 self::A v1 = let final dynamic #t13 = t in let final dynamic #t14 = self::f<
dynamic>() in let final dynamic #t15 = self::f<self::A>() in let final dynamic #
t16 = #t13.{self::Test::[]=}(#t14, #t15) in #t15; |
63 self::A v2 = let final dynamic #t17 = t in let final dynamic #t18 = self::f<
dynamic>() in let final dynamic #t19 = #t17.{self::Test::[]}(#t18) in #t19.{core
::Object::==}(null) ? let final dynamic #t20 = self::f<self::A>() in let final d
ynamic #t21 = #t17.{self::Test::[]=}(#t18, #t20) in #t20 : #t19; | 63 self::A v2 = let final dynamic #t17 = t in let final dynamic #t18 = self::f<
dynamic>() in let final dynamic #t19 = #t17.{self::Test::[]}(#t18) in #t19.{core
::Object::==}(null) ? let final dynamic #t20 = self::f<self::A>() in let final d
ynamic #t21 = #t17.{self::Test::[]=}(#t18, #t20) in #t20 : #t19; |
64 self::C v3 = let final dynamic #t22 = t in let final dynamic #t23 = self::f<
dynamic>() in let final dynamic #t24 = #t22.{self::Test::[]}(#t23).{self::A::+}(
self::f<dynamic>()) in let final dynamic #t25 = #t22.{self::Test::[]=}(#t23, #t2
4) in #t24; | 64 self::C v3 = let final dynamic #t22 = t in let final dynamic #t23 = self::f<
dynamic>() in let final dynamic #t24 = #t22.{self::Test::[]}(#t23).{self::A::+}(
self::f<dynamic>()) in let final dynamic #t25 = #t22.{self::Test::[]=}(#t23, #t2
4) in #t24; |
65 self::C v4 = let final dynamic #t26 = t in let final dynamic #t27 = self::f<
dynamic>() in let final dynamic #t28 = #t26.{self::Test::[]}(#t27).{self::A::-}(
1) in let final dynamic #t29 = #t26.{self::Test::[]=}(#t27, #t28) in #t28; | 65 self::C v4 = let final dynamic #t26 = t in let final dynamic #t27 = self::f<
dynamic>() in let final dynamic #t28 = #t26.{self::Test::[]}(#t27).{self::A::-}(
1) in let final dynamic #t29 = #t26.{self::Test::[]=}(#t27, #t28) in #t28; |
66 self::A v5 = let final dynamic #t30 = t in let final dynamic #t31 = self::f<
dynamic>() in let final dynamic #t32 = #t30.{self::Test::[]}(#t31) in let final
dynamic #t33 = #t30.{self::Test::[]=}(#t31, #t32.{self::A::-}(1)) in #t32; | 66 self::A v5 = let final dynamic #t30 = t in let final dynamic #t31 = self::f<
dynamic>() in let final dynamic #t32 = #t30.{self::Test::[]}(#t31) in let final
dynamic #t33 = #t30.{self::Test::[]=}(#t31, #t32.{self::A::-}(1)) in #t32; |
67 } | 67 } |
68 } | 68 } |
69 static method f<T extends core::Object>() → self::f::T | 69 static method f<T extends core::Object>() → self::f::T |
70 return null; | 70 return null; |
71 static method main() → dynamic {} | 71 static method main() → dynamic {} |
OLD | NEW |