OLD | NEW |
1 library; | 1 library; |
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 X extends core::Object { | 5 class X extends core::Object { |
6 constructor •() → void | 6 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 field self::X foo; | 11 field self::X foo; |
12 constructor •(self::X i) → void | 12 constructor •(self::X i) → void |
13 : self::A::foo = let final Vector #context = MakeVector(2) in let dynamic #t
1 = #context[1] = i in (MakeClosure<() → dynamic>(self::closure#A#function#funct
ion, #context)).call(), super core::Object::•() | 13 : final Vector #context = MakeVector(2), dynamic #t1 = #context[1] = i, self
::A::foo = (MakeClosure<() → dynamic>(self::closure#A#function#function, #contex
t)).call(), super core::Object::•() |
| 14 ; |
| 15 } |
| 16 class S extends self::A { |
| 17 constructor •(self::X i) → void |
| 18 : final Vector #context = MakeVector(2), dynamic #t2 = #context[1] = i, supe
r self::A::•((MakeClosure<() → dynamic>(self::closure#S#function#function, #cont
ext)).call()) |
| 19 ; |
| 20 } |
| 21 class S2 extends core::Object { |
| 22 field self::X foo; |
| 23 constructor •(self::X foo) → void |
| 24 : self::S2::foo = foo, super core::Object::•() |
| 25 ; |
| 26 constructor wat(self::X i) → void |
| 27 : final Vector #context = MakeVector(2), dynamic #t3 = #context[1] = i, dyna
mic extracted#0 = (MakeClosure<() → dynamic>(self::closure#S2#wat#function, #con
text)).call(), this self::S2::•(extracted#0) |
14 ; | 28 ; |
15 } | 29 } |
16 class B extends core::Object { | 30 class B extends core::Object { |
17 field self::X foo = null; | 31 field self::X foo = null; |
18 constructor named(self::X foo) → void | 32 constructor named(self::X foo) → void |
19 : super core::Object::•() {} | 33 : super core::Object::•() {} |
20 constructor •(self::X foo) → void | 34 constructor •(self::X foo) → void |
21 : dynamic extracted#0 = let final Vector #context = MakeVector(2) in let dyn
amic #t2 = #context[1] = foo in (MakeClosure<() → dynamic>(self::closure#B#funct
ion#function, #context)).call(), this self::B::named(extracted#0) | 35 : final Vector #context = MakeVector(2), dynamic #t4 = #context[1] = foo, dy
namic extracted#0 = (MakeClosure<() → dynamic>(self::closure#B#function#function
, #context)).call(), this self::B::named(extracted#0) |
22 ; | 36 ; |
23 } | 37 } |
24 static method main() → dynamic { | 38 static method main() → dynamic { |
25 self::A a = new self::A::•(new self::X::•()); | 39 self::A a = new self::A::•(new self::X::•()); |
26 a.foo; | 40 a.foo; |
27 self::B b = new self::B::•(new self::X::•()); | 41 self::B b = new self::B::•(new self::X::•()); |
28 b.foo; | 42 b.foo; |
| 43 self::S s = new self::S::•(new self::X::•()); |
| 44 s.foo; |
| 45 self::S2 s2 = new self::S2::•(new self::X::•()); |
| 46 s2.foo; |
29 } | 47 } |
30 static method closure#A#function#function(Vector #contextParameter) → dynamic { | 48 static method closure#A#function#function(Vector #contextParameter) → dynamic { |
31 return #contextParameter[1]; | 49 return #contextParameter[1]; |
32 } | 50 } |
| 51 static method closure#S#function#function(Vector #contextParameter) → dynamic { |
| 52 return #contextParameter[1]; |
| 53 } |
| 54 static method closure#S2#wat#function(Vector #contextParameter) → dynamic { |
| 55 return #contextParameter[1]; |
| 56 } |
33 static method closure#B#function#function(Vector #contextParameter) → dynamic { | 57 static method closure#B#function#function(Vector #contextParameter) → dynamic { |
34 return #contextParameter[1]; | 58 return #contextParameter[1]; |
35 } | 59 } |
OLD | NEW |