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

Unified Diff: pkg/compiler/lib/src/types/masks.dart

Issue 2622583004: Use entities in all masks. (Closed)
Patch Set: Update comment. Created 3 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: pkg/compiler/lib/src/types/masks.dart
diff --git a/pkg/compiler/lib/src/types/masks.dart b/pkg/compiler/lib/src/types/masks.dart
index 8e8679927dd40a44cb33ffe90841a1c59f43ce2e..827e3f4e8c889a8547ced6db2394698fc3b5232a 100644
--- a/pkg/compiler/lib/src/types/masks.dart
+++ b/pkg/compiler/lib/src/types/masks.dart
@@ -7,7 +7,7 @@ library masks;
import '../common.dart';
import '../common/backend_api.dart' show BackendClasses;
import '../constants/values.dart' show PrimitiveConstantValue;
-import '../elements/elements.dart';
+import '../elements/elements.dart' show Entity;
import '../elements/entities.dart';
import '../inferrer/type_graph_inferrer.dart' show TypeGraphInferrer;
import '../tree/tree.dart';
@@ -173,7 +173,7 @@ class CommonMasks {
// Just checking for [:TypedData:] is not sufficient, as it is an
// abstract class any user-defined class can implement. So we also
// check for the interface [JavaScriptIndexingBehavior].
- ClassElement typedDataClass = closedWorld.commonElements.typedDataClass;
+ ClassEntity typedDataClass = closedWorld.commonElements.typedDataClass;
return typedDataClass != null &&
closedWorld.isInstantiated(typedDataClass) &&
mask.satisfies(typedDataClass, closedWorld) &&
@@ -187,7 +187,7 @@ class CommonMasks {
!type1.intersection(type2, closedWorld).isEmpty;
// TODO(herhut): Maybe cache the TypeMask for typedDataClass and
// jsIndexingBehaviourInterface.
- ClassElement typedDataClass = closedWorld.commonElements.typedDataClass;
+ ClassEntity typedDataClass = closedWorld.commonElements.typedDataClass;
return typedDataClass != null &&
closedWorld.isInstantiated(typedDataClass) &&
intersects(mask, new TypeMask.subtype(typedDataClass, closedWorld)) &&
@@ -198,11 +198,11 @@ class CommonMasks {
closedWorld));
}
- TypeMask createNonNullExact(ClassElement cls) {
- return new TypeMask.nonNullExact(cls.declaration, closedWorld);
+ TypeMask createNonNullExact(ClassEntity cls) {
+ return new TypeMask.nonNullExact(cls, closedWorld);
}
- TypeMask createNonNullSubtype(ClassElement cls) {
- return new TypeMask.nonNullSubtype(cls.declaration, closedWorld);
+ TypeMask createNonNullSubtype(ClassEntity cls) {
+ return new TypeMask.nonNullSubtype(cls, closedWorld);
}
}

Powered by Google App Engine
This is Rietveld 408576698