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 'common/codegen.dart' show CodegenWorkItem; | 9 import 'common/codegen.dart' show CodegenWorkItem; |
10 import 'common/names.dart' show Identifiers; | 10 import 'common/names.dart' show Identifiers; |
(...skipping 758 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
769 } | 769 } |
770 | 770 |
771 if (element.isGetter && element.name == Identifiers.runtimeType_) { | 771 if (element.isGetter && element.name == Identifiers.runtimeType_) { |
772 // Enable runtime type support if we discover a getter called runtimeType. | 772 // Enable runtime type support if we discover a getter called runtimeType. |
773 // We have to enable runtime type before hitting the codegen, so | 773 // We have to enable runtime type before hitting the codegen, so |
774 // that constructors know whether they need to generate code for | 774 // that constructors know whether they need to generate code for |
775 // runtime type. | 775 // runtime type. |
776 compiler.enabledRuntimeType = true; | 776 compiler.enabledRuntimeType = true; |
777 // TODO(ahe): Record precise dependency here. | 777 // TODO(ahe): Record precise dependency here. |
778 compiler.backend.registerRuntimeType(this, compiler.globalDependencies); | 778 compiler.backend.registerRuntimeType(this, compiler.globalDependencies); |
779 } else if (element == compiler.functionApplyMethod) { | 779 } else if (compiler.commonElements.isFunctionApplyMethod(element)) { |
780 compiler.enabledFunctionApply = true; | 780 compiler.enabledFunctionApply = true; |
781 } | 781 } |
782 | 782 |
783 return true; | 783 return true; |
784 } | 784 } |
785 | 785 |
786 void registerNoSuchMethod(Element element) { | 786 void registerNoSuchMethod(Element element) { |
787 compiler.backend.registerNoSuchMethod(element); | 787 compiler.backend.registerNoSuchMethod(element); |
788 } | 788 } |
789 | 789 |
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1017 } | 1017 } |
1018 | 1018 |
1019 typedef void _DeferredActionFunction(); | 1019 typedef void _DeferredActionFunction(); |
1020 | 1020 |
1021 class _DeferredAction { | 1021 class _DeferredAction { |
1022 final Element element; | 1022 final Element element; |
1023 final _DeferredActionFunction action; | 1023 final _DeferredActionFunction action; |
1024 | 1024 |
1025 _DeferredAction(this.element, this.action); | 1025 _DeferredAction(this.element, this.action); |
1026 } | 1026 } |
OLD | NEW |