Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(926)

Unified Diff: pkg/kernel/testcases/closures/capture_closure.dart.expect

Issue 2778223002: Add primitive to create closures and use it for closure conversion (Closed)
Patch Set: Follow common pattern for AST nodes with References in ClosureCreation Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/kernel/lib/visitor.dart ('k') | pkg/kernel/testcases/closures/capture_closure_parameter.dart.expect » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/kernel/testcases/closures/capture_closure.dart.expect
diff --git a/pkg/kernel/testcases/closures/capture_closure.dart.expect b/pkg/kernel/testcases/closures/capture_closure.dart.expect
index 1047ac7d77be4c8c1ec9074a290350dcbe7cbe09..77971e04b7308c0353caba1524c18c58a7ea2344 100644
--- a/pkg/kernel/testcases/closures/capture_closure.dart.expect
+++ b/pkg/kernel/testcases/closures/capture_closure.dart.expect
@@ -1,34 +1,15 @@
library;
import self as self;
-import "dart:core" as core;
-class Closure#main#f extends core::Object implements core::Function {
- field core::String note = "This is temporary. The VM doesn't need closure classes.";
- field Vector context;
- constructor •(final Vector context) → dynamic
- : self::Closure#main#f::context = context
- ;
- method call() → dynamic {
- "This is a temporary solution. In the VM, this will become an additional parameter.";
- final Vector #contextParameter = this.{self::Closure#main#f::context};
- return null;
- }
-}
-class Closure#main#g extends core::Object implements core::Function {
- field core::String note = "This is temporary. The VM doesn't need closure classes.";
- field Vector context;
- constructor •(final Vector context) → dynamic
- : self::Closure#main#g::context = context
- ;
- method call() → dynamic {
- "This is a temporary solution. In the VM, this will become an additional parameter.";
- final Vector #contextParameter = this.{self::Closure#main#g::context};
- return (#contextParameter[1]).call();
- }
-}
static method main(dynamic arguments) → dynamic {
final Vector #context = MakeVector(2);
- #context[1] = new self::Closure#main#f::•(#context);
- final () → dynamic g = new self::Closure#main#g::•(#context);
+ #context[1] = MakeClosure<() → dynamic>(self::closure#main#f, #context);
+ final () → dynamic g = MakeClosure<() → dynamic>(self::closure#main#g, #context);
g.call();
}
+static method closure#main#f(Vector #contextParameter) → dynamic {
+ return null;
+}
+static method closure#main#g(Vector #contextParameter) → dynamic {
+ return (#contextParameter[1]).call();
+}
« no previous file with comments | « pkg/kernel/lib/visitor.dart ('k') | pkg/kernel/testcases/closures/capture_closure_parameter.dart.expect » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698