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

Side by Side Diff: sdk/lib/_internal/compiler/implementation/compiler.dart

Issue 22871009: Address long-standing review comments. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 4 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | sdk/lib/_internal/compiler/implementation/js_backend/backend.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of dart2js; 5 part of dart2js;
6 6
7 /** 7 /**
8 * If true, print a warning for each method that was resolved, but not 8 * If true, print a warning for each method that was resolved, but not
9 * compiled. 9 * compiled.
10 */ 10 */
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 // TODO(ahe,karlklose): rename this? 122 // TODO(ahe,karlklose): rename this?
123 void dumpInferredTypes() {} 123 void dumpInferredTypes() {}
124 124
125 ItemCompilationContext createItemCompilationContext() { 125 ItemCompilationContext createItemCompilationContext() {
126 return new ItemCompilationContext(); 126 return new ItemCompilationContext();
127 } 127 }
128 128
129 bool classNeedsRti(ClassElement cls); 129 bool classNeedsRti(ClassElement cls);
130 bool methodNeedsRti(FunctionElement function); 130 bool methodNeedsRti(FunctionElement function);
131 131
132 // The following methods are hooks for the backend to register its 132 /// Called during resolution to notify to the backend that a class is
133 // helper methods. 133 /// being instantiated.
134 void registerInstantiatedClass(ClassElement cls, 134 void registerInstantiatedClass(ClassElement cls,
135 Enqueuer enqueuer, 135 Enqueuer enqueuer,
136 TreeElements elements) {} 136 TreeElements elements) {}
137
138 /// Called during resolution to notify to the backend that the
139 /// program uses string interpolation.
137 void registerStringInterpolation(TreeElements elements) {} 140 void registerStringInterpolation(TreeElements elements) {}
141
142 /// Called during resolution to notify to the backend that the
143 /// program has a catch statement.
138 void registerCatchStatement(Enqueuer enqueuer, 144 void registerCatchStatement(Enqueuer enqueuer,
139 TreeElements elements) {} 145 TreeElements elements) {}
140 void registerWrapException(TreeElements elements) {} 146
147 /// Called during resolution to notify to the backend that the
148 /// program explicitly throws an exception.
141 void registerThrowExpression(TreeElements elements) {} 149 void registerThrowExpression(TreeElements elements) {}
150
151 /// Called during resolution to notify to the backend that the
152 /// program has a global variable with a lazy initializer.
142 void registerLazyField(TreeElements elements) {} 153 void registerLazyField(TreeElements elements) {}
154
155 /// Called during resolution to notify to the backend that the
156 /// program uses a type variable as an expression.
143 void registerTypeVariableExpression(TreeElements elements) {} 157 void registerTypeVariableExpression(TreeElements elements) {}
158
159 /// Called during resolution to notify to the backend that the
160 /// program uses a type literal.
144 void registerTypeLiteral(Element element, TreeElements elements) {} 161 void registerTypeLiteral(Element element, TreeElements elements) {}
162
163 /// Called during resolution to notify to the backend that the
164 /// program has a catch statement with a stack trace.
145 void registerStackTraceInCatch(TreeElements elements) {} 165 void registerStackTraceInCatch(TreeElements elements) {}
166
167 /// Register an is check to the backend.
146 void registerIsCheck(DartType type, 168 void registerIsCheck(DartType type,
147 Enqueuer enqueuer, 169 Enqueuer enqueuer,
148 TreeElements elements) {} 170 TreeElements elements) {}
171
172 /// Register an as check to the backend.
149 void registerAsCheck(DartType type, TreeElements elements) {} 173 void registerAsCheck(DartType type, TreeElements elements) {}
174
175 /// Register that the application may throw a [NoSuchMethodError].
150 void registerThrowNoSuchMethod(TreeElements elements) {} 176 void registerThrowNoSuchMethod(TreeElements elements) {}
177
178 /// Register that the application may throw a [RuntimeError].
151 void registerThrowRuntimeError(TreeElements elements) {} 179 void registerThrowRuntimeError(TreeElements elements) {}
180
181 /// Register that the application may throw an
182 /// [AbstractClassInstantiationError].
152 void registerAbstractClassInstantiation(TreeElements elements) {} 183 void registerAbstractClassInstantiation(TreeElements elements) {}
184
185 /// Register that the application may throw a [FallThroughError].
153 void registerFallThroughError(TreeElements elements) {} 186 void registerFallThroughError(TreeElements elements) {}
187
188 /// Register that a super call will end up calling
189 /// [: super.noSuchMethod :].
154 void registerSuperNoSuchMethod(TreeElements elements) {} 190 void registerSuperNoSuchMethod(TreeElements elements) {}
191
192 /// Register that the application creates a constant map.
155 void registerConstantMap(TreeElements elements) {} 193 void registerConstantMap(TreeElements elements) {}
194
156 /** 195 /**
157 * Call this to register that an instantiated generic class has a call 196 * Call this to register that an instantiated generic class has a call
158 * method. 197 * method.
159 */ 198 */
160 void registerGenericCallMethod(Element callMethod, 199 void registerGenericCallMethod(Element callMethod,
161 Enqueuer enqueuer, 200 Enqueuer enqueuer,
162 TreeElements elements) {} 201 TreeElements elements) {}
163 /** 202 /**
164 * Call this to register that a getter exists for a function on an 203 * Call this to register that a getter exists for a function on an
165 * instantiated generic class. 204 * instantiated generic class.
(...skipping 1320 matching lines...) Expand 10 before | Expand all | Expand 10 after
1486 1525
1487 void close() {} 1526 void close() {}
1488 1527
1489 toString() => name; 1528 toString() => name;
1490 1529
1491 /// Convenience method for getting an [api.CompilerOutputProvider]. 1530 /// Convenience method for getting an [api.CompilerOutputProvider].
1492 static NullSink outputProvider(String name, String extension) { 1531 static NullSink outputProvider(String name, String extension) {
1493 return new NullSink('$name.$extension'); 1532 return new NullSink('$name.$extension');
1494 } 1533 }
1495 } 1534 }
OLDNEW
« no previous file with comments | « no previous file | sdk/lib/_internal/compiler/implementation/js_backend/backend.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698