| library; |
| import self as self; |
| import "dart:core" as core; |
| |
| class C extends core::Object { |
| field dynamic t; |
| constructor foo(dynamic f, dynamic x) → void |
| : final Vector #context = MakeVector(4), this self::C::foo#redir(f, x, #context) |
| ; |
| constructor foo#redir(dynamic f, dynamic x, final Vector #context) → void |
| : dynamic #t1 = #context[2] = f, dynamic #t2 = #context[3] = x, self::C::t = MakeClosure<() → dynamic>(self::closure#C#foo#function, #context), super core::Object::•() { |
| #context[3] = 1; |
| core::print(#context[3]); |
| } |
| } |
| static method main() → dynamic { |
| core::print(0); |
| dynamic c = new self::C::foo(MakeClosure<(dynamic) → dynamic>(self::closure#main#function, null), 0); |
| core::print(2); |
| c.t(); |
| core::print(3); |
| } |
| static method closure#C#foo#function(Vector #contextParameter) → dynamic { |
| return (#contextParameter[2]).call(#contextParameter[3]); |
| } |
| static method closure#main#function(Vector #contextParameter, dynamic x) → dynamic { |
| return core::print("hest${x}"); |
| } |