PY-15296 Numpy: allow passing all sequence types for array and array-like parameters

one can pass iterable instad of array and vice versa
This commit is contained in:
Ekaterina Tuzova
2015-04-02 19:42:28 +03:00
parent e1d916dd04
commit 493e762adc
2 changed files with 4 additions and 8 deletions
@@ -43,10 +43,10 @@ public class NumpyDocStringTypeProvider extends PyTypeProviderBase {
private static final Map<String, String> NUMPY_ALIAS_TO_REAL_TYPE = new HashMap<String, String>();
static {
NUMPY_ALIAS_TO_REAL_TYPE.put("ndarray", "numpy.core.multiarray.ndarray");
NUMPY_ALIAS_TO_REAL_TYPE.put("ndarray", "numpy.core.multiarray.ndarray or collections.Iterable");
NUMPY_ALIAS_TO_REAL_TYPE.put("numpy.ndarray", "numpy.core.multiarray.ndarray");
// 184 occurrences
NUMPY_ALIAS_TO_REAL_TYPE.put("array_like", "collections.Iterable");
NUMPY_ALIAS_TO_REAL_TYPE.put("array_like", "numpy.core.multiarray.ndarray or collections.Iterable");
// Parameters marked as 'data-type' actually get any Python type identifier such as 'bool' or
// an instance of 'numpy.core.multiarray.dtype', however the type checker isn't able to check it.
// 30 occurrences
@@ -55,8 +55,8 @@ public class NumpyDocStringTypeProvider extends PyTypeProviderBase {
// 16 occurrences
NUMPY_ALIAS_TO_REAL_TYPE.put("scalar", "int or long or float or complex");
// 10 occurrences
NUMPY_ALIAS_TO_REAL_TYPE.put("array", "numpy.core.multiarray.ndarray");
NUMPY_ALIAS_TO_REAL_TYPE.put("numpy.array", "numpy.core.multiarray.ndarray");
NUMPY_ALIAS_TO_REAL_TYPE.put("array", "numpy.core.multiarray.ndarray or collections.Iterable");
NUMPY_ALIAS_TO_REAL_TYPE.put("numpy.array", "numpy.core.multiarray.ndarray or collections.Iterable");
// 9 occurrences
NUMPY_ALIAS_TO_REAL_TYPE.put("any", "object");
// 5 occurrences
@@ -283,10 +283,6 @@ public class NumPyDocString {
if (index >= 0) {
return typeString.substring(0, index);
}
index = typeString.indexOf(" of "); // e.g. ndarray of dtype float
if (index >= 0) {
return typeString.substring(0, index);
}
return typeString;
}