Index: pkg/compiler/lib/src/js_backend/interceptor_data.dart |
diff --git a/pkg/compiler/lib/src/js_backend/interceptor_data.dart b/pkg/compiler/lib/src/js_backend/interceptor_data.dart |
index f6d8eff280550147f5fb10d54a16c153be437438..80d612c39657b887e62ade968e180fa2b2bebae6 100644 |
--- a/pkg/compiler/lib/src/js_backend/interceptor_data.dart |
+++ b/pkg/compiler/lib/src/js_backend/interceptor_data.dart |
@@ -55,15 +55,15 @@ class InterceptorDataImpl implements InterceptorData { |
/// The members of instantiated interceptor classes: maps a member name to the |
/// list of members that have that name. This map is used by the codegen to |
/// know whether a send must be intercepted or not. |
- final Map<String, Set<MemberEntity>> _interceptedElements; |
+ final Map<String, Set<MemberEntity>> interceptedMembers; |
/// Set of classes whose methods are intercepted. |
- final Set<ClassEntity> _interceptedClasses; |
+ final Set<ClassEntity> interceptedClasses; |
/// Set of classes used as mixins on intercepted (native and primitive) |
/// classes. Methods on these classes might also be mixed in to regular Dart |
/// (unintercepted) classes. |
- final Set<ClassEntity> _classesMixedIntoInterceptedClasses; |
+ final Set<ClassEntity> classesMixedIntoInterceptedClasses; |
/// The members of mixin classes that are mixed into an instantiated |
/// interceptor class. This is a cached subset of [_interceptedElements]. |
@@ -85,9 +85,9 @@ class InterceptorDataImpl implements InterceptorData { |
InterceptorDataImpl( |
this._nativeData, |
this._commonElements, |
- this._interceptedElements, |
- this._interceptedClasses, |
- this._classesMixedIntoInterceptedClasses); |
+ this.interceptedMembers, |
+ this.interceptedClasses, |
+ this.classesMixedIntoInterceptedClasses); |
bool isInterceptedMethod(MemberEntity element) { |
if (!element.isInstanceMember) return false; |
@@ -95,23 +95,23 @@ class InterceptorDataImpl implements InterceptorData { |
if (element is ConstructorBodyElement) { |
return _nativeData.isNativeOrExtendsNative(element.enclosingClass); |
} |
- return _interceptedElements[element.name] != null; |
+ return interceptedMembers[element.name] != null; |
} |
bool fieldHasInterceptedGetter(FieldEntity element) { |
- return _interceptedElements[element.name] != null; |
+ return interceptedMembers[element.name] != null; |
} |
bool fieldHasInterceptedSetter(FieldEntity element) { |
- return _interceptedElements[element.name] != null; |
+ return interceptedMembers[element.name] != null; |
} |
bool isInterceptedName(String name) { |
- return _interceptedElements[name] != null; |
+ return interceptedMembers[name] != null; |
} |
bool isInterceptedSelector(Selector selector) { |
- return _interceptedElements[selector.name] != null; |
+ return interceptedMembers[selector.name] != null; |
} |
/// Returns `true` iff [selector] matches an element defined in a class mixed |
@@ -121,10 +121,10 @@ class InterceptorDataImpl implements InterceptorData { |
Selector selector, TypeMask mask, ClosedWorld closedWorld) { |
Set<MemberEntity> elements = |
_interceptedMixinElements.putIfAbsent(selector.name, () { |
- Set<MemberEntity> elements = _interceptedElements[selector.name]; |
+ Set<MemberEntity> elements = interceptedMembers[selector.name]; |
if (elements == null) return null; |
return elements |
- .where((element) => _classesMixedIntoInterceptedClasses |
+ .where((element) => classesMixedIntoInterceptedClasses |
.contains(element.enclosingClass)) |
.toSet(); |
}); |
@@ -154,7 +154,7 @@ class InterceptorDataImpl implements InterceptorData { |
/// Returns an empty set if there is no class. Do not modify the returned set. |
Set<ClassEntity> getInterceptedClassesOn( |
String name, ClosedWorld closedWorld) { |
- Set<MemberEntity> intercepted = _interceptedElements[name]; |
+ Set<MemberEntity> intercepted = interceptedMembers[name]; |
if (intercepted == null) return _noClasses; |
return _interceptedClassesCache.putIfAbsent(name, () { |
// Populate the cache by running through all the elements and |
@@ -167,7 +167,7 @@ class InterceptorDataImpl implements InterceptorData { |
interceptedClasses.contains(classElement)) { |
result.add(classElement); |
} |
- if (_classesMixedIntoInterceptedClasses.contains(classElement)) { |
+ if (classesMixedIntoInterceptedClasses.contains(classElement)) { |
Set<ClassEntity> nativeSubclasses = |
nativeSubclassesOfMixin(classElement, closedWorld); |
if (nativeSubclasses != null) result.addAll(nativeSubclasses); |
@@ -196,20 +196,12 @@ class InterceptorDataImpl implements InterceptorData { |
if (element == null) return false; |
if (_nativeData.isNativeOrExtendsNative(element)) return true; |
if (interceptedClasses.contains(element)) return true; |
- if (_classesMixedIntoInterceptedClasses.contains(element)) return true; |
+ if (classesMixedIntoInterceptedClasses.contains(element)) return true; |
return false; |
} |
bool isMixedIntoInterceptedClass(ClassEntity element) => |
- _classesMixedIntoInterceptedClasses.contains(element); |
- |
- Iterable<ClassEntity> get interceptedClasses => _interceptedClasses; |
- |
- Map<String, Set<MemberEntity>> get interceptedElementsForTesting => |
- _interceptedElements; |
- |
- Set<ClassEntity> get classesMixedIntoInterceptedClassesForTesting => |
- _classesMixedIntoInterceptedClasses; |
+ classesMixedIntoInterceptedClasses.contains(element); |
bool mayGenerateInstanceofCheck(DartType type, ClosedWorld closedWorld) { |
// We can use an instanceof check for raw types that have no subclass that |