Index: pkg/compiler/lib/src/types/types.dart |
diff --git a/pkg/compiler/lib/src/types/types.dart b/pkg/compiler/lib/src/types/types.dart |
index 733d119f874ec197978646b2cd78667b0d08c08e..b8591aafc190d198021634e204178c1976c509cf 100644 |
--- a/pkg/compiler/lib/src/types/types.dart |
+++ b/pkg/compiler/lib/src/types/types.dart |
@@ -87,6 +87,9 @@ class TypesTask extends CompilerTask { |
TypeMask constMapTypeCache; |
TypeMask stringTypeCache; |
TypeMask typeTypeCache; |
+ TypeMask syncStarIterableTypeCache; |
+ TypeMask asyncFutureTypeCache; |
+ TypeMask asyncStarStreamTypeCache; |
TypeMask get dynamicType { |
if (dynamicTypeCache == null) { |
@@ -232,6 +235,30 @@ class TypesTask extends CompilerTask { |
return typeTypeCache; |
} |
+ TypeMask get syncStarIterableType { |
+ if (syncStarIterableTypeCache == null) { |
+ syncStarIterableTypeCache = new TypeMask.nonNullExact( |
+ compiler.backend.syncStarIterableImplementation, compiler.world); |
+ } |
+ return syncStarIterableTypeCache; |
+ } |
+ |
+ TypeMask get asyncFutureType { |
+ if (asyncFutureTypeCache == null) { |
+ asyncFutureTypeCache = new TypeMask.nonNullExact( |
+ compiler.backend.asyncFutureImplementation, compiler.world); |
+ } |
+ return asyncFutureTypeCache; |
+ } |
+ |
+ TypeMask get asyncStarStreamType { |
+ if (asyncStarStreamTypeCache == null) { |
+ asyncStarStreamTypeCache = new TypeMask.nonNullExact( |
+ compiler.backend.asyncStarStreamImplementation, compiler.world); |
+ } |
+ return asyncStarStreamTypeCache; |
+ } |
+ |
TypeMask get nullType { |
if (nullTypeCache == null) { |
// TODO(johnniwinther): Assert that the null type has been resolved. |