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

Unified Diff: pkg/compiler/lib/src/common/backend_api.dart

Issue 1374243002: Remove Registry arguments from Enqueuer. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Updated cf. comment. Created 5 years, 3 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 | « no previous file | pkg/compiler/lib/src/common/codegen.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/common/backend_api.dart
diff --git a/pkg/compiler/lib/src/common/backend_api.dart b/pkg/compiler/lib/src/common/backend_api.dart
index b095b230809e7c65cb78c1e79b78df1a36adc1e8..487f01d4cb6f0daac9c3bc005341636d41428131 100644
--- a/pkg/compiler/lib/src/common/backend_api.dart
+++ b/pkg/compiler/lib/src/common/backend_api.dart
@@ -159,9 +159,15 @@ abstract class Backend {
Enqueuer enqueuer,
Registry registry) {}
- /// Called to notify to the backend that an interface type has been
- /// instantiated.
- void registerInstantiatedType(InterfaceType type, Registry registry) {}
+ /// Called to instruct to the backend register [type] as instantiated on
+ /// [enqueuer].
+ void registerInstantiatedType(InterfaceType type,
+ Enqueuer enqueuer,
+ Registry registry,
+ {bool mirrorUsage: false}) {
+ registry.registerDependency(type.element);
+ enqueuer.registerInstantiatedType(type, mirrorUsage: mirrorUsage);
+ }
/// Register an is check to the backend.
void registerIsCheckForCodegen(DartType type,
@@ -182,14 +188,14 @@ abstract class Backend {
Enqueuer enqueuer,
Registry registry) {}
- /**
- * Call this to register that a getter exists for a function on an
- * instantiated generic class.
- */
+ /// Called to instruct the backend to register that a closure exists for a
+ /// function on an instantiated generic class.
void registerClosureWithFreeTypeVariables(
Element closure,
Enqueuer enqueuer,
- Registry registry) {}
+ Registry registry) {
+ enqueuer.universe.closuresWithFreeTypeVariables.add(closure);
+ }
/// Call this to register that a member has been closurized.
void registerBoundClosure(Enqueuer enqueuer) {}
« no previous file with comments | « no previous file | pkg/compiler/lib/src/common/codegen.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698