OLD | NEW |
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 library dart2js.enqueue; | 5 library dart2js.enqueue; |
6 | 6 |
7 import 'dart:collection' show Queue; | 7 import 'dart:collection' show Queue; |
8 | 8 |
9 import 'cache_strategy.dart'; | 9 import 'cache_strategy.dart'; |
10 import 'common/backend_api.dart' show Backend; | 10 import 'common/backend_api.dart' show Backend; |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
128 | 128 |
129 final CompilerTask task; | 129 final CompilerTask task; |
130 final String name; | 130 final String name; |
131 final Resolution _resolution; | 131 final Resolution _resolution; |
132 final CompilerOptions _options; | 132 final CompilerOptions _options; |
133 final Backend backend; | 133 final Backend backend; |
134 final GlobalDependencyRegistry _globalDependencies; | 134 final GlobalDependencyRegistry _globalDependencies; |
135 final native.NativeEnqueuer nativeEnqueuer; | 135 final native.NativeEnqueuer nativeEnqueuer; |
136 | 136 |
137 final EnqueuerStrategy strategy; | 137 final EnqueuerStrategy strategy; |
138 Set<ClassEntity> _recentClasses = new Setlet<ClassEntity>(); | 138 final Set<ClassEntity> _recentClasses = new Setlet<ClassEntity>(); |
139 final ResolutionWorldBuilderImpl _universe; | 139 final ResolutionWorldBuilderImpl _universe; |
140 | 140 |
141 bool queueIsClosed = false; | 141 bool queueIsClosed = false; |
142 | 142 |
143 WorldImpactVisitor _impactVisitor; | 143 WorldImpactVisitor _impactVisitor; |
144 | 144 |
145 /// All declaration elements that have been processed by the resolver. | 145 /// All declaration elements that have been processed by the resolver. |
146 final Set<Entity> _processedElements = new Set<Entity>(); | 146 final Set<Entity> _processedElements = new Set<Entity>(); |
147 | 147 |
148 final Queue<WorkItem> _queue = new Queue<WorkItem>(); | 148 final Queue<WorkItem> _queue = new Queue<WorkItem>(); |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
300 break; | 300 break; |
301 case TypeUseKind.TYPE_LITERAL: | 301 case TypeUseKind.TYPE_LITERAL: |
302 if (type.isTypedef) { | 302 if (type.isTypedef) { |
303 universe.openWorld.registerTypedef(type.element); | 303 universe.openWorld.registerTypedef(type.element); |
304 } | 304 } |
305 break; | 305 break; |
306 } | 306 } |
307 } | 307 } |
308 | 308 |
309 void _registerIsCheck(DartType type) { | 309 void _registerIsCheck(DartType type) { |
310 type = _universe.registerIsCheck(type, _resolution); | 310 type = _universe.registerIsCheck(type); |
311 // Even in checked mode, type annotations for return type and argument | 311 // Even in checked mode, type annotations for return type and argument |
312 // types do not imply type checks, so there should never be a check | 312 // types do not imply type checks, so there should never be a check |
313 // against the type variable of a typedef. | 313 // against the type variable of a typedef. |
314 assert(!type.isTypeVariable || !type.element.enclosingElement.isTypedef); | 314 assert(!type.isTypeVariable || !type.element.enclosingElement.isTypedef); |
315 } | 315 } |
316 | 316 |
317 void _registerClosurizedMember(MemberElement element) { | 317 void _registerClosurizedMember(MemberElement element) { |
318 assert(element.isInstanceMember); | 318 assert(element.isInstanceMember); |
319 if (element.type.containsTypeVariables) { | 319 if (element.type.containsTypeVariables) { |
320 applyImpact(backend.registerClosureWithFreeTypeVariables(element, | 320 applyImpact(backend.registerClosureWithFreeTypeVariables(element, |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
524 } | 524 } |
525 | 525 |
526 typedef void _DeferredActionFunction(); | 526 typedef void _DeferredActionFunction(); |
527 | 527 |
528 class _DeferredAction { | 528 class _DeferredAction { |
529 final Element element; | 529 final Element element; |
530 final _DeferredActionFunction action; | 530 final _DeferredActionFunction action; |
531 | 531 |
532 _DeferredAction(this.element, this.action); | 532 _DeferredAction(this.element, this.action); |
533 } | 533 } |
OLD | NEW |