| 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 177eefe4421865b1606816a6171c4e9f15d04481..96490f5c03790dbf7f869857c9fc4a0d3e50e52b 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/compiler.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/compiler.dart
|
| @@ -126,7 +126,8 @@ abstract class Backend {
|
| return new ItemCompilationContext();
|
| }
|
|
|
| - bool needsRti(ClassElement cls);
|
| + bool classNeedsRti(ClassElement cls);
|
| + bool methodNeedsRti(FunctionElement function);
|
|
|
| // The following methods are hooks for the backend to register its
|
| // helper methods.
|
| @@ -152,7 +153,24 @@ 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) {}
|
| + /**
|
| + * 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) {}
|
|
|