OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 import '../common/backend_api.dart'; | 5 import '../common/backend_api.dart'; |
6 import '../common/resolution.dart'; | 6 import '../common/resolution.dart'; |
7 import '../common_elements.dart'; | 7 import '../common_elements.dart'; |
8 import '../constants/constant_system.dart'; | 8 import '../constants/constant_system.dart'; |
9 import '../constants/values.dart'; | 9 import '../constants/values.dart'; |
| 10 import '../elements/elements.dart'; |
| 11 import '../elements/entities.dart'; |
10 import '../elements/resolution_types.dart'; | 12 import '../elements/resolution_types.dart'; |
11 import '../elements/elements.dart'; | |
12 import '../universe/call_structure.dart'; | 13 import '../universe/call_structure.dart'; |
13 import '../universe/use.dart' show ConstantUse, StaticUse; | 14 import '../universe/use.dart' show ConstantUse, StaticUse; |
14 import '../universe/world_impact.dart' | 15 import '../universe/world_impact.dart' |
15 show WorldImpact, StagedWorldImpactBuilder; | 16 show WorldImpact, StagedWorldImpactBuilder; |
16 import 'backend_usage.dart' show BackendUsageBuilder; | 17 import 'backend_usage.dart' show BackendUsageBuilder; |
17 import 'backend_helpers.dart'; | 18 import 'backend_helpers.dart'; |
18 import 'native_data.dart'; | 19 import 'native_data.dart'; |
19 | 20 |
20 /** | 21 /** |
21 * Support for Custom Elements. | 22 * Support for Custom Elements. |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 classElement.ensureResolved(_resolution); | 68 classElement.ensureResolved(_resolution); |
68 if (!_nativeData.isNativeOrExtendsNative(classElement)) return; | 69 if (!_nativeData.isNativeOrExtendsNative(classElement)) return; |
69 if (classElement.isMixinApplication) return; | 70 if (classElement.isMixinApplication) return; |
70 if (classElement.isAbstract) return; | 71 if (classElement.isAbstract) return; |
71 // JsInterop classes are opaque interfaces without a concrete | 72 // JsInterop classes are opaque interfaces without a concrete |
72 // implementation. | 73 // implementation. |
73 if (_nativeData.isJsInteropClass(classElement)) return; | 74 if (_nativeData.isJsInteropClass(classElement)) return; |
74 join.instantiatedClasses.add(classElement); | 75 join.instantiatedClasses.add(classElement); |
75 } | 76 } |
76 | 77 |
77 void registerStaticUse(Element element) { | 78 void registerStaticUse(MemberEntity element) { |
78 assert(element != null); | 79 assert(element != null); |
79 if (element == _helpers.findIndexForNativeSubclassType) { | 80 if (element == _helpers.findIndexForNativeSubclassType) { |
80 join.demanded = true; | 81 join.demanded = true; |
81 } | 82 } |
82 } | 83 } |
83 | 84 |
84 /// Computes the [WorldImpact] of the classes registered since last flush. | 85 /// Computes the [WorldImpact] of the classes registered since last flush. |
85 WorldImpact flush() => join.flush(); | 86 WorldImpact flush() => join.flush(); |
86 } | 87 } |
87 | 88 |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
251 result.add(member); | 252 result.add(member); |
252 } | 253 } |
253 } | 254 } |
254 } | 255 } |
255 | 256 |
256 classElement.forEachMember(selectGenerativeConstructors, | 257 classElement.forEachMember(selectGenerativeConstructors, |
257 includeBackendMembers: false, includeSuperAndInjectedMembers: false); | 258 includeBackendMembers: false, includeSuperAndInjectedMembers: false); |
258 return result; | 259 return result; |
259 } | 260 } |
260 } | 261 } |
OLD | NEW |