| 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.
|
|
|