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

Unified Diff: sdk/lib/_internal/compiler/implementation/compiler.dart

Issue 12334070: Support runtime check of function types. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: New check encoding Created 7 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
Index: sdk/lib/_internal/compiler/implementation/compiler.dart
diff --git a/sdk/lib/_internal/compiler/implementation/compiler.dart b/sdk/lib/_internal/compiler/implementation/compiler.dart
index 7a23913b62edfbd6f83563ba5b230192e4d94b7c..ad45fbc94bed5609dd535fc07e0c652fa60eaaa0 100644
--- a/sdk/lib/_internal/compiler/implementation/compiler.dart
+++ b/sdk/lib/_internal/compiler/implementation/compiler.dart
@@ -131,6 +131,7 @@ abstract class Backend {
}
bool needsRti(ClassElement cls);
karlklose 2013/03/22 13:17:46 Should we rename this to classNeedsRti?
Johnni Winther 2013/06/21 12:19:14 Done.
+ bool methodNeedsRti(Element cls);
karlklose 2013/03/22 13:17:46 'Element' -> 'FunctionElement'. 'cls' -> 'function
Johnni Winther 2013/06/21 12:19:14 Done.
// The following methods are hooks for the backend to register its
// helper methods.
@@ -154,7 +155,22 @@ abstract class Backend {
void registerFallThroughError(TreeElements elements) {}
void registerSuperNoSuchMethod(TreeElements elements) {}
void registerConstantMap(TreeElements elements) {}
- void registerRuntimeType(TreeElements elements) {}
+ /**
+ * Call this to register that an instantiated generic class has a call
+ * method.
+ */
+ void registerGenericCallMethod(Element callMethod,
+ Enqueuer enqueuer, TreeElements elements) {}
karlklose 2013/03/22 13:17:46 Break line after each parameter to keep the code i
Johnni Winther 2013/06/21 12:19:14 Done.
+ /**
+ * Call this to register that a getter exists for a function on an
+ * instantiated generic class.
+ */
+ void registerGenericClosure(Element closure,
+ Enqueuer enqueuer, TreeElements elements) {}
+ /**
+ * Call this to register that the [:runtimeType:] property has been accessed.
+ */
+ void registerRuntimeType(Enqueuer enqueuer, TreeElements elements) {}
void registerRequiredType(DartType type, Element enclosingElement) {}
void registerClassUsingVariableExpression(ClassElement cls) {}

Powered by Google App Engine
This is Rietveld 408576698