OLD | NEW |
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, 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 part of world_builder; | 5 part of world_builder; |
6 | 6 |
7 /// [ResolutionEnqueuerWorldBuilder] based on the [Element] model. | 7 /// [ResolutionEnqueuerWorldBuilder] based on the [Element] model. |
8 class ElementResolutionWorldBuilder extends ResolutionWorldBuilderBase { | 8 class ElementResolutionWorldBuilder extends ResolutionWorldBuilderBase { |
9 /// Used for testing the new more precise computation of instantiated types | 9 /// Used for testing the new more precise computation of instantiated types |
10 /// and classes. | 10 /// and classes. |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
172 Map<ClassEntity, Set<ClassEntity>> typesImplementedBySubclasses = | 172 Map<ClassEntity, Set<ClassEntity>> typesImplementedBySubclasses = |
173 populateHierarchyNodes(); | 173 populateHierarchyNodes(); |
174 _closed = true; | 174 _closed = true; |
175 return _closedWorldCache = new ClosedWorldImpl( | 175 return _closedWorldCache = new ClosedWorldImpl( |
176 commonElements: _commonElements, | 176 commonElements: _commonElements, |
177 constantSystem: _constantSystem, | 177 constantSystem: _constantSystem, |
178 nativeData: _nativeDataBuilder.close(), | 178 nativeData: _nativeDataBuilder.close(), |
179 interceptorData: _interceptorDataBuilder.close(), | 179 interceptorData: _interceptorDataBuilder.close(), |
180 backendUsage: _backendUsageBuilder.close(), | 180 backendUsage: _backendUsageBuilder.close(), |
181 resolutionWorldBuilder: this, | 181 resolutionWorldBuilder: this, |
| 182 implementedClasses: _implementedClasses, |
182 functionSet: _allFunctions.close(), | 183 functionSet: _allFunctions.close(), |
183 allTypedefs: _allTypedefs, | 184 allTypedefs: _allTypedefs, |
184 mixinUses: _mixinUses, | 185 mixinUses: _mixinUses, |
185 typesImplementedBySubclasses: typesImplementedBySubclasses, | 186 typesImplementedBySubclasses: typesImplementedBySubclasses, |
186 classHierarchyNodes: _classHierarchyNodes, | 187 classHierarchyNodes: _classHierarchyNodes, |
187 classSets: _classSets); | 188 classSets: _classSets); |
188 } | 189 } |
189 | 190 |
190 @override | 191 @override |
191 void registerMixinUse( | 192 void registerMixinUse( |
192 MixinApplicationElement mixinApplication, ClassElement mixin) { | 193 MixinApplicationElement mixinApplication, ClassElement mixin) { |
193 assert(mixin.isDeclaration); | 194 assert(mixin.isDeclaration); |
194 super.registerMixinUse(mixinApplication, mixin); | 195 super.registerMixinUse(mixinApplication, mixin); |
195 } | 196 } |
196 } | 197 } |
OLD | NEW |