| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 deferred_load; | 5 library deferred_load; |
| 6 | 6 |
| 7 import 'dart2jslib.dart' show | 7 import 'dart2jslib.dart' show |
| 8 Backend, | 8 Backend, |
| 9 Compiler, | 9 Compiler, |
| 10 CompilerTask, | 10 CompilerTask, |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 298 if (astElement is! TypedefElement && | 298 if (astElement is! TypedefElement && |
| 299 !compiler.enqueuer.resolution.hasBeenResolved(astElement)) { | 299 !compiler.enqueuer.resolution.hasBeenResolved(astElement)) { |
| 300 return; | 300 return; |
| 301 } | 301 } |
| 302 | 302 |
| 303 TreeElements treeElements = astElement.resolvedAst.elements; | 303 TreeElements treeElements = astElement.resolvedAst.elements; |
| 304 | 304 |
| 305 assert(treeElements != null); | 305 assert(treeElements != null); |
| 306 | 306 |
| 307 for (Element dependency in treeElements.allElements) { | 307 for (Element dependency in treeElements.allElements) { |
| 308 if (Elements.isLocal(dependency) && !dependency.isFunction) continue; | 308 if (dependency.isLocal && !dependency.isFunction) continue; |
| 309 if (dependency.isErroneous) continue; | 309 if (dependency.isErroneous) continue; |
| 310 if (dependency.isTypeVariable) continue; | 310 if (dependency.isTypeVariable) continue; |
| 311 | 311 |
| 312 elements.add(dependency); | 312 elements.add(dependency); |
| 313 } | 313 } |
| 314 treeElements.forEachConstantNode((Node node, _) { | 314 treeElements.forEachConstantNode((Node node, _) { |
| 315 // Explicitly depend on the backend constants. | 315 // Explicitly depend on the backend constants. |
| 316 addConstants( | 316 addConstants( |
| 317 backend.constants.getConstantForNode(node, treeElements)); | 317 backend.constants.getConstantForNode(node, treeElements)); |
| 318 }); | 318 }); |
| (...skipping 438 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 757 Element maybePrefix = elements[identifier]; | 757 Element maybePrefix = elements[identifier]; |
| 758 if (maybePrefix != null && maybePrefix.isPrefix) { | 758 if (maybePrefix != null && maybePrefix.isPrefix) { |
| 759 PrefixElement prefixElement = maybePrefix; | 759 PrefixElement prefixElement = maybePrefix; |
| 760 if (prefixElement.isDeferred) { | 760 if (prefixElement.isDeferred) { |
| 761 return prefixElement; | 761 return prefixElement; |
| 762 } | 762 } |
| 763 } | 763 } |
| 764 return null; | 764 return null; |
| 765 } | 765 } |
| 766 } | 766 } |
| OLD | NEW |