diff options
author | iantra <iantrasolari@gmail.com> | 2022-09-05 14:32:34 +0200 |
---|---|---|
committer | iantra <iantrasolari@gmail.com> | 2022-09-05 17:22:03 +0200 |
commit | d35f772dbfa598868bb0a1155ee7bf8ca9183b59 (patch) | |
tree | c485cdf39d3f87013821aa1f38320b38d41d3088 /numpy/core/numeric.pyi | |
parent | a670bea06280a50458a08e2dd9f1512150e02526 (diff) | |
download | numpy-d35f772dbfa598868bb0a1155ee7bf8ca9183b59.tar.gz |
BUG: Introduce Unknown array type to deal with NDArray[Any] more gracefully.
Diffstat (limited to 'numpy/core/numeric.pyi')
-rw-r--r-- | numpy/core/numeric.pyi | 62 |
1 files changed, 48 insertions, 14 deletions
diff --git a/numpy/core/numeric.pyi b/numpy/core/numeric.pyi index ed2b03ab4..98d3789a5 100644 --- a/numpy/core/numeric.pyi +++ b/numpy/core/numeric.pyi @@ -43,6 +43,7 @@ from numpy._typing import ( _ArrayLikeComplex_co, _ArrayLikeTD64_co, _ArrayLikeObject_co, + _ArrayLikeUnknown, ) _T = TypeVar("_T") @@ -257,10 +258,10 @@ def flatnonzero(a: ArrayLike) -> NDArray[intp]: ... @overload def correlate( - a: _ArrayLikeObject_co, - v: _ArrayLikeObject_co, + a: _ArrayLikeUnknown, + v: _ArrayLikeUnknown, mode: _CorrelateMode = ..., -) -> NDArray[object_]: ... +) -> NDArray[Any]: ... @overload def correlate( a: _ArrayLikeBool_co, @@ -297,13 +298,19 @@ def correlate( v: _ArrayLikeTD64_co, mode: _CorrelateMode = ..., ) -> NDArray[timedelta64]: ... - @overload -def convolve( +def correlate( a: _ArrayLikeObject_co, v: _ArrayLikeObject_co, mode: _CorrelateMode = ..., ) -> NDArray[object_]: ... + +@overload +def convolve( + a: _ArrayLikeUnknown, + v: _ArrayLikeUnknown, + mode: _CorrelateMode = ..., +) -> NDArray[Any]: ... @overload def convolve( a: _ArrayLikeBool_co, @@ -340,13 +347,19 @@ def convolve( v: _ArrayLikeTD64_co, mode: _CorrelateMode = ..., ) -> NDArray[timedelta64]: ... +@overload +def convolve( + a: _ArrayLikeObject_co, + v: _ArrayLikeObject_co, + mode: _CorrelateMode = ..., +) -> NDArray[object_]: ... @overload def outer( - a: _ArrayLikeObject_co, - b: _ArrayLikeObject_co, + a: _ArrayLikeUnknown, + b: _ArrayLikeUnknown, out: None = ..., -) -> NDArray[object_]: ... +) -> NDArray[Any]: ... @overload def outer( a: _ArrayLikeBool_co, @@ -385,6 +398,12 @@ def outer( ) -> NDArray[timedelta64]: ... @overload def outer( + a: _ArrayLikeObject_co, + b: _ArrayLikeObject_co, + out: None = ..., +) -> NDArray[object_]: ... +@overload +def outer( a: _ArrayLikeComplex_co | _ArrayLikeTD64_co | _ArrayLikeObject_co, b: _ArrayLikeComplex_co | _ArrayLikeTD64_co | _ArrayLikeObject_co, out: _ArrayType, @@ -392,10 +411,10 @@ def outer( @overload def tensordot( - a: _ArrayLikeObject_co, - b: _ArrayLikeObject_co, + a: _ArrayLikeUnknown, + b: _ArrayLikeUnknown, axes: int | tuple[_ShapeLike, _ShapeLike] = ..., -) -> NDArray[object_]: ... +) -> NDArray[Any]: ... @overload def tensordot( a: _ArrayLikeBool_co, @@ -432,6 +451,12 @@ def tensordot( b: _ArrayLikeTD64_co, axes: int | tuple[_ShapeLike, _ShapeLike] = ..., ) -> NDArray[timedelta64]: ... +@overload +def tensordot( + a: _ArrayLikeObject_co, + b: _ArrayLikeObject_co, + axes: int | tuple[_ShapeLike, _ShapeLike] = ..., +) -> NDArray[object_]: ... @overload def roll( @@ -460,13 +485,13 @@ def moveaxis( @overload def cross( - a: _ArrayLikeObject_co, - b: _ArrayLikeObject_co, + a: _ArrayLikeUnknown, + b: _ArrayLikeUnknown, axisa: int = ..., axisb: int = ..., axisc: int = ..., axis: None | int = ..., -) -> NDArray[object_]: ... +) -> NDArray[Any]: ... @overload def cross( a: _ArrayLikeBool_co, @@ -512,6 +537,15 @@ def cross( axisc: int = ..., axis: None | int = ..., ) -> NDArray[complexfloating[Any, Any]]: ... +@overload +def cross( + a: _ArrayLikeObject_co, + b: _ArrayLikeObject_co, + axisa: int = ..., + axisb: int = ..., + axisc: int = ..., + axis: None | int = ..., +) -> NDArray[object_]: ... @overload def indices( |