Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/compiler.dart |
| =================================================================== |
| --- sdk/lib/_internal/compiler/implementation/compiler.dart (revision 26191) |
| +++ sdk/lib/_internal/compiler/implementation/compiler.dart (working copy) |
| @@ -129,30 +129,72 @@ |
| bool classNeedsRti(ClassElement cls); |
| bool methodNeedsRti(FunctionElement function); |
| - // The following methods are hooks for the backend to register its |
| - // helper methods. |
| + /// Called during resolution to notify to the backend that a class is |
| + /// being instantiated. |
| void registerInstantiatedClass(ClassElement cls, |
| Enqueuer enqueuer, |
| TreeElements elements) {} |
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program uses string interpolation. |
| void registerStringInterpolation(TreeElements elements) {} |
| + |
|
ahe
2013/08/15 15:56:54
DANGER DANGER!!!
Extra line!!!
ngeoffray
2013/08/15 16:06:59
Done.
|
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program has a catch statement. |
| void registerCatchStatement(Enqueuer enqueuer, |
| TreeElements elements) {} |
| - void registerWrapException(TreeElements elements) {} |
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program explicitly throws an exception. |
| void registerThrowExpression(TreeElements elements) {} |
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program has a global variable with a lazy initializer. |
| void registerLazyField(TreeElements elements) {} |
| + |
|
ahe
2013/08/15 15:56:54
SEGFAULT!
ngeoffray
2013/08/15 16:06:59
Done.
|
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program uses a type variable as an expression. |
| void registerTypeVariableExpression(TreeElements elements) {} |
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program uses a type literal. |
| void registerTypeLiteral(Element element, TreeElements elements) {} |
| + |
| + /// Called during resolution to notify to the backend that the |
| + /// program has a catch statement with a stack trace. |
| void registerStackTraceInCatch(TreeElements elements) {} |
| + |
| + |
|
ahe
2013/08/15 15:56:54
ARGH!!!
ngeoffray
2013/08/15 16:06:59
Done.
|
| + /// Register an is check to the backend. |
| void registerIsCheck(DartType type, |
| Enqueuer enqueuer, |
| TreeElements elements) {} |
| + |
| + /// Register an is check to the backend. |
|
ahe
2013/08/15 15:56:54
is -> as
ngeoffray
2013/08/15 16:06:59
Done.
|
| void registerAsCheck(DartType type, TreeElements elements) {} |
| + |
| + /// Register that the application may throw a [NoSuchMethodError]. |
| void registerThrowNoSuchMethod(TreeElements elements) {} |
| + |
| + /// Register that the application may throw a [RuntimeError]. |
| void registerThrowRuntimeError(TreeElements elements) {} |
| + |
| + /// Register that the application may throw an |
| + /// [AbstractClassInstantiationError]. |
| void registerAbstractClassInstantiation(TreeElements elements) {} |
| + |
| + /// Register that the application may throw a [FallThroughError]. |
| void registerFallThroughError(TreeElements elements) {} |
| + |
| + /// Register that a super call will end up calling |
| + /// [: super.noSuchMethod :]. |
| void registerSuperNoSuchMethod(TreeElements elements) {} |
| + |
| + /// Register that the application creates a constant map. |
| void registerConstantMap(TreeElements elements) {} |
| + |
| /** |
| * Call this to register that an instantiated generic class has a call |
| * method. |