| Index: pkg/compiler/lib/src/kernel/world_builder.dart
|
| diff --git a/pkg/compiler/lib/src/kernel/world_builder.dart b/pkg/compiler/lib/src/kernel/world_builder.dart
|
| index 3b7f3ccbda7cf67f2d4138ba89ee60e72f6a5d84..519b33f585de80d48e628fdd505ccba91faa1500 100644
|
| --- a/pkg/compiler/lib/src/kernel/world_builder.dart
|
| +++ b/pkg/compiler/lib/src/kernel/world_builder.dart
|
| @@ -26,6 +26,7 @@ import '../native/resolver.dart';
|
| import '../ordered_typeset.dart';
|
| import '../ssa/kernel_impact.dart';
|
| import '../universe/call_structure.dart';
|
| +import '../universe/world_builder.dart';
|
| import '../util/util.dart' show Link, LinkBuilder;
|
| import 'element_adapter.dart';
|
| import 'elements.dart';
|
| @@ -1102,6 +1103,50 @@ class _EvaluationEnvironment implements Environment {
|
| }
|
| }
|
|
|
| +class KernelResolutionWorldBuilder extends KernelResolutionWorldBuilderBase {
|
| + final KernelWorldBuilder worldBuilder;
|
| +
|
| + KernelResolutionWorldBuilder(
|
| + this.worldBuilder,
|
| + NativeBasicData nativeBasicData,
|
| + SelectorConstraintsStrategy selectorConstraintsStrategy)
|
| + : super(worldBuilder.elementEnvironment, worldBuilder.commonElements,
|
| + nativeBasicData, selectorConstraintsStrategy);
|
| +
|
| + @override
|
| + Iterable<InterfaceType> getSupertypes(ClassEntity cls) {
|
| + return worldBuilder._getOrderedTypeSet(cls).supertypes;
|
| + }
|
| +
|
| + @override
|
| + ClassEntity getSuperClass(ClassEntity cls) {
|
| + return worldBuilder._getSuperType(cls)?.element;
|
| + }
|
| +
|
| + @override
|
| + bool implementsFunction(ClassEntity cls) {
|
| + // TODO(johnniwinther): Implement this.
|
| + return false;
|
| + }
|
| +
|
| + @override
|
| + int getHierarchyDepth(ClassEntity cls) {
|
| + return worldBuilder._getHierarchyDepth(cls);
|
| + }
|
| +
|
| + @override
|
| + ClassEntity getAppliedMixin(ClassEntity cls) {
|
| + // TODO(johnniwinther): Implement this.
|
| + return null;
|
| + }
|
| +
|
| + @override
|
| + bool validateClass(ClassEntity cls) => true;
|
| +
|
| + @override
|
| + bool checkClass(ClassEntity cls) => true;
|
| +}
|
| +
|
| // Interface for testing equivalence of Kernel-based entities.
|
| class WorldDeconstructionForTesting {
|
| final KernelWorldBuilder builder;
|
|
|