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

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

Issue 2494093002: Refactor enqueuers (Closed)
Patch Set: Updated cf. comments. Created 4 years, 1 month 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/compiler.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 b8944a1f23c8f1e0414188abbb24619d07694829..ea4ae66d33209549fa53e87c09b1cc15cec9e354 100644
--- a/pkg/compiler/lib/src/common/backend_api.dart
+++ b/pkg/compiler/lib/src/common/backend_api.dart
@@ -83,7 +83,7 @@ abstract class Backend extends Target {
void initializeHelperClasses() {}
- void enqueueHelpers(ResolutionEnqueuer world, Registry registry);
+ void enqueueHelpers(ResolutionEnqueuer world);
/// Creates an [Enqueuer] for code generation specific to this backend.
Enqueuer createCodegenEnqueuer(Compiler compiler);
@@ -117,7 +117,8 @@ abstract class Backend extends Target {
/// Enable deferred loading. Returns `true` if the backend supports deferred
/// loading.
- bool enableDeferredLoadingIfSupported(Spannable node, Registry registry);
+ bool enableDeferredLoadingIfSupported(
+ ResolutionEnqueuer enqueuer, Spannable node);
/// Called during codegen when [constant] has been used.
void computeImpactForCompileTimeConstant(ConstantValue constant,
@@ -126,22 +127,15 @@ abstract class Backend extends Target {
/// Called to notify to the backend that a class is being instantiated.
// TODO(johnniwinther): Remove this. It's only called once for each [cls] and
// only with [Compiler.globalDependencies] as [registry].
- void registerInstantiatedClass(
- ClassElement cls, Enqueuer enqueuer, Registry registry) {}
+ void registerInstantiatedClass(ClassElement cls, Enqueuer enqueuer) {}
/// Called to notify to the backend that a class is implemented by an
/// instantiated class.
- void registerImplementedClass(
- ClassElement cls, Enqueuer enqueuer, Registry registry) {}
+ void registerImplementedClass(ClassElement cls, Enqueuer enqueuer) {}
/// 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);
- }
+ void registerInstantiatedType(InterfaceType type) {}
/// Register a runtime type variable bound tests between [typeArgument] and
/// [bound].
@@ -153,12 +147,12 @@ abstract class Backend extends Target {
* method.
*/
void registerCallMethodWithFreeTypeVariables(
- Element callMethod, Enqueuer enqueuer, Registry registry) {}
+ Element callMethod, Enqueuer enqueuer) {}
/// 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) {}
+ Element closure, Enqueuer enqueuer) {}
/// Call this to register that a member has been closurized.
void registerBoundClosure(Enqueuer enqueuer) {}
@@ -169,7 +163,7 @@ abstract class Backend extends Target {
/**
* Call this to register that the [:runtimeType:] property has been accessed.
*/
- void registerRuntimeType(Enqueuer enqueuer, Registry registry) {}
+ void registerRuntimeType(Enqueuer enqueuer) {}
/// Call this to register a `noSuchMethod` implementation.
void registerNoSuchMethod(FunctionElement noSuchMethodElement) {}
@@ -213,7 +207,7 @@ abstract class Backend extends Target {
return false;
}
- void registerStaticUse(Element element, {bool forResolution}) {}
+ void registerStaticUse(Enqueuer enqueuer, Element element) {}
/// This method is called immediately after the [LibraryElement] [library] has
/// been created.
@@ -368,7 +362,8 @@ abstract class ForeignResolver {
class ImpactTransformer {
/// Transform the [ResolutionImpact] into a [WorldImpact] adding the
/// backend dependencies for features used in [worldImpact].
- WorldImpact transformResolutionImpact(ResolutionImpact worldImpact) {
+ WorldImpact transformResolutionImpact(
+ ResolutionEnqueuer enqueuer, ResolutionImpact worldImpact) {
return worldImpact;
}
« no previous file with comments | « no previous file | pkg/compiler/lib/src/compiler.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698