Index: editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/TypeProviderImpl.java |
diff --git a/editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/TypeProviderImpl.java b/editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/TypeProviderImpl.java |
index 5e384aa862c4fdbca1a4209cf8c1a50a830966da..d546a1544a3bf9e874c682cce66c2dbc1306b3f5 100644 |
--- a/editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/TypeProviderImpl.java |
+++ b/editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/TypeProviderImpl.java |
@@ -67,6 +67,16 @@ public class TypeProviderImpl implements TypeProvider { |
private InterfaceType intType; |
/** |
+ * The type representing 'Iterable<dynamic>'. |
+ */ |
+ private InterfaceType iterableDynamicType; |
+ |
+ /** |
+ * The type representing the built-in type 'Iterable'. |
+ */ |
+ private InterfaceType iterableType; |
+ |
+ /** |
* The type representing the built-in type 'List'. |
*/ |
private InterfaceType listType; |
@@ -156,6 +166,16 @@ public class TypeProviderImpl implements TypeProvider { |
} |
@Override |
+ public InterfaceType getIterableDynamicType() { |
+ return iterableDynamicType; |
+ } |
+ |
+ @Override |
+ public InterfaceType getIterableType() { |
+ return iterableType; |
+ } |
+ |
+ @Override |
public InterfaceType getListType() { |
return listType; |
} |
@@ -231,6 +251,7 @@ public class TypeProviderImpl implements TypeProvider { |
dynamicType = DynamicTypeImpl.getInstance(); |
functionType = getType(namespace, "Function"); |
intType = getType(namespace, "int"); |
+ iterableType = getType(namespace, "Iterable"); |
listType = getType(namespace, "List"); |
mapType = getType(namespace, "Map"); |
nullType = getType(namespace, "Null"); |
@@ -240,5 +261,6 @@ public class TypeProviderImpl implements TypeProvider { |
stringType = getType(namespace, "String"); |
symbolType = getType(namespace, "Symbol"); |
typeType = getType(namespace, "Type"); |
+ iterableDynamicType = iterableType.substitute(new Type[] {dynamicType}); |
} |
} |