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

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

Issue 17413013: Revert "Support runtime check of function types." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 6 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
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 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 119
120 void onResolutionComplete() {} 120 void onResolutionComplete() {}
121 121
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 needsRti(ClassElement cls);
130 bool methodNeedsRti(FunctionElement function);
131 130
132 // The following methods are hooks for the backend to register its 131 // The following methods are hooks for the backend to register its
133 // helper methods. 132 // helper methods.
134 void registerInstantiatedClass(ClassElement cls, 133 void registerInstantiatedClass(ClassElement cls,
135 Enqueuer enqueuer, 134 Enqueuer enqueuer,
136 TreeElements elements) {} 135 TreeElements elements) {}
137 void registerStringInterpolation(TreeElements elements) {} 136 void registerStringInterpolation(TreeElements elements) {}
138 void registerCatchStatement(Enqueuer enqueuer, 137 void registerCatchStatement(Enqueuer enqueuer,
139 TreeElements elements) {} 138 TreeElements elements) {}
140 void registerWrapException(TreeElements elements) {} 139 void registerWrapException(TreeElements elements) {}
141 void registerThrowExpression(TreeElements elements) {} 140 void registerThrowExpression(TreeElements elements) {}
142 void registerLazyField(TreeElements elements) {} 141 void registerLazyField(TreeElements elements) {}
143 void registerTypeVariableExpression(TreeElements elements) {} 142 void registerTypeVariableExpression(TreeElements elements) {}
144 void registerTypeLiteral(TreeElements elements) {} 143 void registerTypeLiteral(TreeElements elements) {}
145 void registerStackTraceInCatch(TreeElements elements) {} 144 void registerStackTraceInCatch(TreeElements elements) {}
146 void registerIsCheck(DartType type, 145 void registerIsCheck(DartType type,
147 Enqueuer enqueuer, 146 Enqueuer enqueuer,
148 TreeElements elements) {} 147 TreeElements elements) {}
149 void registerAsCheck(DartType type, TreeElements elements) {} 148 void registerAsCheck(DartType type, TreeElements elements) {}
150 void registerThrowNoSuchMethod(TreeElements elements) {} 149 void registerThrowNoSuchMethod(TreeElements elements) {}
151 void registerThrowRuntimeError(TreeElements elements) {} 150 void registerThrowRuntimeError(TreeElements elements) {}
152 void registerAbstractClassInstantiation(TreeElements elements) {} 151 void registerAbstractClassInstantiation(TreeElements elements) {}
153 void registerFallThroughError(TreeElements elements) {} 152 void registerFallThroughError(TreeElements elements) {}
154 void registerSuperNoSuchMethod(TreeElements elements) {} 153 void registerSuperNoSuchMethod(TreeElements elements) {}
155 void registerConstantMap(TreeElements elements) {} 154 void registerConstantMap(TreeElements elements) {}
156 /** 155 void registerRuntimeType(TreeElements elements) {}
157 * Call this to register that an instantiated generic class has a call
158 * method.
159 */
160 void registerGenericCallMethod(Element callMethod,
161 Enqueuer enqueuer,
162 TreeElements elements) {}
163 /**
164 * Call this to register that a getter exists for a function on an
165 * instantiated generic class.
166 */
167 void registerGenericClosure(Element closure,
168 Enqueuer enqueuer,
169 TreeElements elements) {}
170 /**
171 * Call this to register that the [:runtimeType:] property has been accessed.
172 */
173 void registerRuntimeType(Enqueuer enqueuer, TreeElements elements) {}
174 156
175 void registerRequiredType(DartType type, Element enclosingElement) {} 157 void registerRequiredType(DartType type, Element enclosingElement) {}
176 void registerClassUsingVariableExpression(ClassElement cls) {} 158 void registerClassUsingVariableExpression(ClassElement cls) {}
177 159
178 bool isNullImplementation(ClassElement cls) { 160 bool isNullImplementation(ClassElement cls) {
179 return cls == compiler.nullClass; 161 return cls == compiler.nullClass;
180 } 162 }
181 ClassElement get intImplementation => compiler.intClass; 163 ClassElement get intImplementation => compiler.intClass;
182 ClassElement get doubleImplementation => compiler.doubleClass; 164 ClassElement get doubleImplementation => compiler.doubleClass;
183 ClassElement get numImplementation => compiler.numClass; 165 ClassElement get numImplementation => compiler.numClass;
(...skipping 1248 matching lines...) Expand 10 before | Expand all | Expand 10 after
1432 1414
1433 void close() {} 1415 void close() {}
1434 1416
1435 toString() => name; 1417 toString() => name;
1436 1418
1437 /// Convenience method for getting an [api.CompilerOutputProvider]. 1419 /// Convenience method for getting an [api.CompilerOutputProvider].
1438 static NullSink outputProvider(String name, String extension) { 1420 static NullSink outputProvider(String name, String extension) {
1439 return new NullSink('$name.$extension'); 1421 return new NullSink('$name.$extension');
1440 } 1422 }
1441 } 1423 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698