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

Side by Side Diff: dart/lib/compiler/implementation/enqueue.dart

Issue 10661029: Ensure interfaces are loaded. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 8 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
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 class EnqueueTask extends CompilerTask { 5 class EnqueueTask extends CompilerTask {
6 final Enqueuer codegen; 6 final Enqueuer codegen;
7 final Enqueuer resolution; 7 final Enqueuer resolution;
8 8
9 String get name() => 'Enqueue'; 9 String get name() => 'Enqueue';
10 10
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 return addToWorkList(member); 201 return addToWorkList(member);
202 } 202 }
203 } 203 }
204 } 204 }
205 205
206 void onRegisterInstantiatedClass(ClassElement cls) { 206 void onRegisterInstantiatedClass(ClassElement cls) {
207 task.measure(() { 207 task.measure(() {
208 while (cls !== null) { 208 while (cls !== null) {
209 if (seenClasses.contains(cls)) return; 209 if (seenClasses.contains(cls)) return;
210 seenClasses.add(cls); 210 seenClasses.add(cls);
211 // TODO(ahe): Don't call resolveType, instead, call this method 211 // TODO(ahe): Don't call ensureResolved, instead, call this method
212 // when resolveType is called. 212 // from the resolver.
213 compiler.resolveClass(cls); 213 cls.ensureResolved(compiler);
214 cls.members.forEach(processInstantiatedClassMember); 214 cls.members.forEach(processInstantiatedClassMember);
215 cls = cls.superclass; 215 cls = cls.superclass;
216 } 216 }
217 }); 217 });
218 } 218 }
219 219
220 void registerNewSelector(SourceString name, 220 void registerNewSelector(SourceString name,
221 Selector selector, 221 Selector selector,
222 Map<SourceString, Set<Selector>> selectorsMap) { 222 Map<SourceString, Set<Selector>> selectorsMap) {
223 Set<Selector> selectors = 223 Set<Selector> selectors =
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 void registerIsCheck(Element element) { 314 void registerIsCheck(Element element) {
315 universe.isChecks.add(element); 315 universe.isChecks.add(element);
316 } 316 }
317 317
318 void forEach(f(WorkItem work)) { 318 void forEach(f(WorkItem work)) {
319 while (!queue.isEmpty()) { 319 while (!queue.isEmpty()) {
320 f(queue.removeLast()); 320 f(queue.removeLast());
321 } 321 }
322 } 322 }
323 } 323 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698