Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(276)

Side by Side Diff: pkg/compiler/lib/src/resolution/resolution_strategy.dart

Issue 2850143002: Reuse RuntimeTypesNeedBuilderImpl and _RuntimeTypesNeed for kernel based elements (Closed)
Patch Set: Fix comment Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 library dart2js.resolution_strategy; 5 library dart2js.resolution_strategy;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common_elements.dart'; 8 import '../common_elements.dart';
9 import '../common/backend_api.dart'; 9 import '../common/backend_api.dart';
10 import '../common/names.dart'; 10 import '../common/names.dart';
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 MirrorsDataBuilder createMirrorsDataBuilder() { 98 MirrorsDataBuilder createMirrorsDataBuilder() {
99 return new MirrorsDataImpl( 99 return new MirrorsDataImpl(
100 _compiler, _compiler.options, _compiler.commonElements); 100 _compiler, _compiler.options, _compiler.commonElements);
101 } 101 }
102 102
103 MirrorsResolutionAnalysis createMirrorsResolutionAnalysis( 103 MirrorsResolutionAnalysis createMirrorsResolutionAnalysis(
104 JavaScriptBackend backend) => 104 JavaScriptBackend backend) =>
105 new MirrorsResolutionAnalysisImpl(backend, _compiler.resolution); 105 new MirrorsResolutionAnalysisImpl(backend, _compiler.resolution);
106 106
107 RuntimeTypesNeedBuilder createRuntimeTypesNeedBuilder() { 107 RuntimeTypesNeedBuilder createRuntimeTypesNeedBuilder() {
108 return new RuntimeTypesNeedBuilderImpl(); 108 return new ResolutionRuntimeTypesNeedBuilderImpl(
109 elementEnvironment, _compiler.types);
109 } 110 }
110 111
111 ResolutionWorldBuilder createResolutionWorldBuilder( 112 ResolutionWorldBuilder createResolutionWorldBuilder(
112 NativeBasicData nativeBasicData, 113 NativeBasicData nativeBasicData,
113 SelectorConstraintsStrategy selectorConstraintsStrategy) { 114 SelectorConstraintsStrategy selectorConstraintsStrategy) {
114 return new ElementResolutionWorldBuilder( 115 return new ElementResolutionWorldBuilder(
115 _compiler.backend, _compiler.resolution, selectorConstraintsStrategy); 116 _compiler.backend, _compiler.resolution, selectorConstraintsStrategy);
116 } 117 }
117 118
118 WorkItemBuilder createResolutionWorkItemBuilder( 119 WorkItemBuilder createResolutionWorkItemBuilder(
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 return cls.thisType; 223 return cls.thisType;
223 } 224 }
224 225
225 @override 226 @override
226 ResolutionInterfaceType getRawType(ClassElement cls) { 227 ResolutionInterfaceType getRawType(ClassElement cls) {
227 cls.ensureResolved(_resolution); 228 cls.ensureResolved(_resolution);
228 return cls.rawType; 229 return cls.rawType;
229 } 230 }
230 231
231 @override 232 @override
233 bool isGenericClass(ClassEntity cls) {
234 return getThisType(cls).typeArguments.isNotEmpty;
235 }
236
237 @override
232 ResolutionDartType getTypeVariableBound(TypeVariableElement typeVariable) { 238 ResolutionDartType getTypeVariableBound(TypeVariableElement typeVariable) {
233 return typeVariable.bound; 239 return typeVariable.bound;
234 } 240 }
235 241
236 @override 242 @override
237 ResolutionInterfaceType createInterfaceType( 243 ResolutionInterfaceType createInterfaceType(
238 ClassElement cls, List<ResolutionDartType> typeArguments) { 244 ClassElement cls, List<ResolutionDartType> typeArguments) {
239 cls.ensureResolved(_resolution); 245 cls.ensureResolved(_resolution);
240 return cls.thisType.createInstantiation(typeArguments); 246 return cls.thisType.createInstantiation(typeArguments);
241 } 247 }
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after
604 } 610 }
605 } 611 }
606 }); 612 });
607 }); 613 });
608 } 614 }
609 615
610 _compiler.libraryLoader.libraries 616 _compiler.libraryLoader.libraries
611 .forEach(processJsInteropAnnotationsInLibrary); 617 .forEach(processJsInteropAnnotationsInLibrary);
612 } 618 }
613 } 619 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698