| Index: pkg/compiler/lib/src/kernel/element_map_impl.dart
|
| diff --git a/pkg/compiler/lib/src/kernel/element_map_impl.dart b/pkg/compiler/lib/src/kernel/element_map_impl.dart
|
| index 0ea848812b398acbfc04acced7577e27559a234f..6f5b6de00295a2226db157c2a750b950d4f953a5 100644
|
| --- a/pkg/compiler/lib/src/kernel/element_map_impl.dart
|
| +++ b/pkg/compiler/lib/src/kernel/element_map_impl.dart
|
| @@ -989,9 +989,10 @@ class KernelToElementMapForImpactImpl extends KernelToElementMapBase
|
| KElementCreatorMixin {
|
| native.BehaviorBuilder _nativeBehaviorBuilder;
|
| FrontendStrategy _frontendStrategy;
|
| + CompilerOptions _options;
|
|
|
| KernelToElementMapForImpactImpl(DiagnosticReporter reporter,
|
| - Environment environment, this._frontendStrategy)
|
| + Environment environment, this._frontendStrategy, this._options)
|
| : super(reporter, environment);
|
|
|
| @override
|
| @@ -1016,7 +1017,8 @@ class KernelToElementMapForImpactImpl extends KernelToElementMapBase
|
|
|
| @override
|
| native.BehaviorBuilder get nativeBehaviorBuilder =>
|
| - _nativeBehaviorBuilder ??= new KernelBehaviorBuilder(commonElements);
|
| + _nativeBehaviorBuilder ??= new KernelBehaviorBuilder(elementEnvironment,
|
| + commonElements, nativeBasicData, reporter, _options);
|
|
|
| ResolutionImpact computeWorldImpact(KMember member) {
|
| return buildKernelImpact(
|
| @@ -1033,10 +1035,6 @@ class KernelToElementMapForImpactImpl extends KernelToElementMapBase
|
| return _memberData[method.memberIndex].definition.node;
|
| }
|
|
|
| - Iterable<ConstantValue> _getClassMetadata(KClass cls) {
|
| - return _classData[cls.classIndex].getMetadata(this);
|
| - }
|
| -
|
| @override
|
| Local getLocalFunction(ir.TreeNode node) {
|
| assert(
|
| @@ -1378,25 +1376,18 @@ class DartTypeConverter extends ir.DartTypeVisitor<DartType> {
|
|
|
| /// [native.BehaviorBuilder] for kernel based elements.
|
| class KernelBehaviorBuilder extends native.BehaviorBuilder {
|
| + final ElementEnvironment elementEnvironment;
|
| final CommonElements commonElements;
|
| + final DiagnosticReporter reporter;
|
| + final NativeBasicData nativeBasicData;
|
| + final CompilerOptions _options;
|
|
|
| - KernelBehaviorBuilder(this.commonElements);
|
| + KernelBehaviorBuilder(this.elementEnvironment, this.commonElements,
|
| + this.nativeBasicData, this.reporter, this._options);
|
|
|
| @override
|
| - bool get trustJSInteropTypeAnnotations {
|
| - throw new UnimplementedError(
|
| - "KernelNativeBehaviorComputer.trustJSInteropTypeAnnotations");
|
| - }
|
| -
|
| - @override
|
| - DiagnosticReporter get reporter {
|
| - throw new UnimplementedError("KernelNativeBehaviorComputer.reporter");
|
| - }
|
| -
|
| - NativeBasicData get nativeBasicData {
|
| - throw new UnimplementedError(
|
| - "KernelNativeBehaviorComputer.nativeBasicData");
|
| - }
|
| + bool get trustJSInteropTypeAnnotations =>
|
| + _options.trustJSInteropTypeAnnotations;
|
| }
|
|
|
| /// Constant environment mapping [ConstantExpression]s to [ConstantValue]s using
|
| @@ -1735,8 +1726,7 @@ class KernelNativeMemberResolver extends NativeMemberResolverBase {
|
|
|
| @override
|
| bool isJsInteropMember(MemberEntity element) {
|
| - // TODO(redemption): Compute this.
|
| - return false;
|
| + return nativeBasicData.isJsInteropMember(element);
|
| }
|
| }
|
|
|
|
|