diff options
| author | Bas van Beek <43369155+BvB93@users.noreply.github.com> | 2021-11-02 10:25:45 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-11-02 10:25:45 +0100 |
| commit | 11ee9953489e9f1bbce35d5b7cd8dcc59cd31235 (patch) | |
| tree | 52c086cd47dfb23d8de26cfffa976f3b7d23c9d6 | |
| parent | fae6fa47a3cf9b9c64af2f5bd11a3b644b1763d2 (diff) | |
| parent | 35e2d8fc23adf982994d00d959ab3a7ec27c84f1 (diff) | |
| download | numpy-11ee9953489e9f1bbce35d5b7cd8dcc59cd31235.tar.gz | |
Merge pull request #20224 from Azureblade3808/use-alias-for-dtype-in-type-stubs
BUG: Fix shadowed reference of `dtype` in type stubs
| -rw-r--r-- | numpy/__init__.pyi | 91 |
1 files changed, 46 insertions, 45 deletions
diff --git a/numpy/__init__.pyi b/numpy/__init__.pyi index 229b6b916..637f8578a 100644 --- a/numpy/__init__.pyi +++ b/numpy/__init__.pyi @@ -682,7 +682,7 @@ _DTypeScalar_co = TypeVar("_DTypeScalar_co", covariant=True, bound=generic) _ByteOrder = L["S", "<", ">", "=", "|", "L", "B", "N", "I"] class dtype(Generic[_DTypeScalar_co]): - names: None | Tuple[str, ...] + names: None | Tuple[builtins.str, ...] # Overload for subclass of generic @overload def __new__( @@ -709,7 +709,7 @@ class dtype(Generic[_DTypeScalar_co]): @overload def __new__(cls, dtype: Type[complex], align: bool = ..., copy: bool = ...) -> dtype[complex_]: ... @overload - def __new__(cls, dtype: Type[str], align: bool = ..., copy: bool = ...) -> dtype[str_]: ... + def __new__(cls, dtype: Type[builtins.str], align: bool = ..., copy: bool = ...) -> dtype[str_]: ... @overload def __new__(cls, dtype: Type[bytes], align: bool = ..., copy: bool = ...) -> dtype[bytes_]: ... @@ -823,7 +823,7 @@ class dtype(Generic[_DTypeScalar_co]): @overload def __new__( cls, - dtype: str, + dtype: builtins.str, align: bool = ..., copy: bool = ..., ) -> dtype[Any]: ... @@ -848,9 +848,9 @@ class dtype(Generic[_DTypeScalar_co]): def __class_getitem__(self, item: Any) -> GenericAlias: ... @overload - def __getitem__(self: dtype[void], key: List[str]) -> dtype[void]: ... + def __getitem__(self: dtype[void], key: List[builtins.str]) -> dtype[void]: ... @overload - def __getitem__(self: dtype[void], key: str | SupportsIndex) -> dtype[Any]: ... + def __getitem__(self: dtype[void], key: builtins.str | SupportsIndex) -> dtype[Any]: ... # NOTE: In the future 1-based multiplications will also yield `flexible` dtypes @overload @@ -884,15 +884,15 @@ class dtype(Generic[_DTypeScalar_co]): @property def base(self) -> dtype[Any]: ... @property - def byteorder(self) -> str: ... + def byteorder(self) -> builtins.str: ... @property - def char(self) -> str: ... + def char(self) -> builtins.str: ... @property - def descr(self) -> List[Tuple[str, str] | Tuple[str, str, _Shape]]: ... + def descr(self) -> List[Tuple[builtins.str, builtins.str] | Tuple[builtins.str, builtins.str, _Shape]]: ... @property def fields( self, - ) -> None | MappingProxyType[str, Tuple[dtype[Any], int] | Tuple[dtype[Any], int, Any]]: ... + ) -> None | MappingProxyType[builtins.str, Tuple[dtype[Any], int] | Tuple[dtype[Any], int, Any]]: ... @property def flags(self) -> int: ... @property @@ -906,11 +906,11 @@ class dtype(Generic[_DTypeScalar_co]): @property def itemsize(self) -> int: ... @property - def kind(self) -> str: ... + def kind(self) -> builtins.str: ... @property - def metadata(self) -> None | MappingProxyType[str, Any]: ... + def metadata(self) -> None | MappingProxyType[builtins.str, Any]: ... @property - def name(self) -> str: ... + def name(self) -> builtins.str: ... @property def num(self) -> int: ... @property @@ -920,8 +920,6 @@ class dtype(Generic[_DTypeScalar_co]): @property def subdtype(self) -> None | Tuple[dtype[Any], _Shape]: ... def newbyteorder(self: _DType, __new_order: _ByteOrder = ...) -> _DType: ... - # Leave str and type for end to avoid having to use `builtins.str` - # everywhere. See https://github.com/python/mypy/issues/3775 @property def str(self) -> builtins.str: ... @property @@ -1431,6 +1429,9 @@ _ArrayComplex_co = NDArray[Union[bool_, integer[Any], floating[Any], complexfloa _ArrayNumber_co = NDArray[Union[bool_, number[Any]]] _ArrayTD64_co = NDArray[Union[bool_, integer[Any], timedelta64]] +# Introduce an alias for `dtype` to avoid naming conflicts. +_dtype = dtype + class _SupportsItem(Protocol[_T_co]): def item(self, args: Any, /) -> _T_co: ... @@ -1452,13 +1453,13 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @property def real( self: NDArray[_SupportsReal[_ScalarType]], # type: ignore[type-var] - ) -> ndarray[_ShapeType, dtype[_ScalarType]]: ... + ) -> ndarray[_ShapeType, _dtype[_ScalarType]]: ... @real.setter def real(self, value: ArrayLike) -> None: ... @property def imag( self: NDArray[_SupportsImag[_ScalarType]], # type: ignore[type-var] - ) -> ndarray[_ShapeType, dtype[_ScalarType]]: ... + ) -> ndarray[_ShapeType, _dtype[_ScalarType]]: ... @imag.setter def imag(self, value: ArrayLike) -> None: ... def __new__( @@ -1530,7 +1531,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __getitem__(self: NDArray[void], key: str) -> NDArray[Any]: ... @overload - def __getitem__(self: NDArray[void], key: list[str]) -> ndarray[_ShapeType, dtype[void]]: ... + def __getitem__(self: NDArray[void], key: list[str]) -> ndarray[_ShapeType, _dtype[void]]: ... @property def ctypes(self) -> _ctypes[int]: ... @@ -1550,12 +1551,12 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): # Use the same output type as that of the underlying `generic` @overload def item( - self: ndarray[Any, dtype[_SupportsItem[_T]]], # type: ignore[type-var] + self: ndarray[Any, _dtype[_SupportsItem[_T]]], # type: ignore[type-var] *args: SupportsIndex, ) -> _T: ... @overload def item( - self: ndarray[Any, dtype[_SupportsItem[_T]]], # type: ignore[type-var] + self: ndarray[Any, _dtype[_SupportsItem[_T]]], # type: ignore[type-var] args: Tuple[SupportsIndex, ...], /, ) -> _T: ... @@ -1596,7 +1597,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): axis: Optional[SupportsIndex] = ..., kind: _PartitionKind = ..., order: Union[None, str, Sequence[str]] = ..., - ) -> ndarray[Any, dtype[intp]]: ... + ) -> ndarray[Any, _dtype[intp]]: ... def diagonal( self, @@ -1615,7 +1616,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): def dot(self, b: ArrayLike, out: _NdArraySubClass) -> _NdArraySubClass: ... # `nonzero()` is deprecated for 0d arrays/generics - def nonzero(self) -> Tuple[ndarray[Any, dtype[intp]], ...]: ... + def nonzero(self) -> Tuple[ndarray[Any, _dtype[intp]], ...]: ... def partition( self, @@ -1647,7 +1648,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): v: ArrayLike, side: _SortSide = ..., sorter: Optional[_ArrayLikeInt_co] = ..., - ) -> ndarray[Any, dtype[intp]]: ... + ) -> ndarray[Any, _dtype[intp]]: ... def setfield( self, @@ -1684,7 +1685,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def take( # type: ignore[misc] - self: ndarray[Any, dtype[_ScalarType]], + self: ndarray[Any, _dtype[_ScalarType]], indices: _IntLike_co, axis: Optional[SupportsIndex] = ..., out: None = ..., @@ -1781,19 +1782,19 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): # Dispatch to the underlying `generic` via protocols def __int__( - self: ndarray[Any, dtype[SupportsInt]], # type: ignore[type-var] + self: ndarray[Any, _dtype[SupportsInt]], # type: ignore[type-var] ) -> int: ... def __float__( - self: ndarray[Any, dtype[SupportsFloat]], # type: ignore[type-var] + self: ndarray[Any, _dtype[SupportsFloat]], # type: ignore[type-var] ) -> float: ... def __complex__( - self: ndarray[Any, dtype[SupportsComplex]], # type: ignore[type-var] + self: ndarray[Any, _dtype[SupportsComplex]], # type: ignore[type-var] ) -> complex: ... def __index__( - self: ndarray[Any, dtype[SupportsIndex]], # type: ignore[type-var] + self: ndarray[Any, _dtype[SupportsIndex]], # type: ignore[type-var] ) -> int: ... def __len__(self) -> int: ... @@ -1925,7 +1926,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __mod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> NDArray[floating[Any]]: ... # type: ignore[misc] @overload - def __mod__(self: _ArrayTD64_co, other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[timedelta64]: ... + def __mod__(self: _ArrayTD64_co, other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[timedelta64]: ... @overload def __mod__(self: NDArray[object_], other: Any) -> Any: ... @overload @@ -1940,7 +1941,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __rmod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> NDArray[floating[Any]]: ... # type: ignore[misc] @overload - def __rmod__(self: _ArrayTD64_co, other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[timedelta64]: ... + def __rmod__(self: _ArrayTD64_co, other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[timedelta64]: ... @overload def __rmod__(self: NDArray[object_], other: Any) -> Any: ... @overload @@ -1955,7 +1956,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __divmod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> _2Tuple[NDArray[floating[Any]]]: ... # type: ignore[misc] @overload - def __divmod__(self: _ArrayTD64_co, other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ... + def __divmod__(self: _ArrayTD64_co, other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ... @overload def __rdivmod__(self: NDArray[bool_], other: _ArrayLikeBool_co) -> _2Tuple[NDArray[int8]]: ... # type: ignore[misc] @@ -1966,7 +1967,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __rdivmod__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> _2Tuple[NDArray[floating[Any]]]: ... # type: ignore[misc] @overload - def __rdivmod__(self: _ArrayTD64_co, other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ... + def __rdivmod__(self: _ArrayTD64_co, other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> Tuple[NDArray[int64], NDArray[timedelta64]]: ... @overload def __add__(self: NDArray[bool_], other: _ArrayLikeBool_co) -> NDArray[bool_]: ... # type: ignore[misc] @@ -2099,7 +2100,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __floordiv__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> NDArray[floating[Any]]: ... # type: ignore[misc] @overload - def __floordiv__(self: NDArray[timedelta64], other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[int64]: ... + def __floordiv__(self: NDArray[timedelta64], other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[int64]: ... @overload def __floordiv__(self: NDArray[timedelta64], other: _ArrayLikeBool_co) -> NoReturn: ... @overload @@ -2118,7 +2119,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __rfloordiv__(self: _ArrayFloat_co, other: _ArrayLikeFloat_co) -> NDArray[floating[Any]]: ... # type: ignore[misc] @overload - def __rfloordiv__(self: NDArray[timedelta64], other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[int64]: ... + def __rfloordiv__(self: NDArray[timedelta64], other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[int64]: ... @overload def __rfloordiv__(self: NDArray[bool_], other: _ArrayLikeTD64_co) -> NoReturn: ... @overload @@ -2165,7 +2166,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __truediv__(self: _ArrayComplex_co, other: _ArrayLikeComplex_co) -> NDArray[complexfloating[Any, Any]]: ... # type: ignore[misc] @overload - def __truediv__(self: NDArray[timedelta64], other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[float64]: ... + def __truediv__(self: NDArray[timedelta64], other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[float64]: ... @overload def __truediv__(self: NDArray[timedelta64], other: _ArrayLikeBool_co) -> NoReturn: ... @overload @@ -2182,7 +2183,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __rtruediv__(self: _ArrayComplex_co, other: _ArrayLikeComplex_co) -> NDArray[complexfloating[Any, Any]]: ... # type: ignore[misc] @overload - def __rtruediv__(self: NDArray[timedelta64], other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[float64]: ... + def __rtruediv__(self: NDArray[timedelta64], other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[float64]: ... @overload def __rtruediv__(self: NDArray[bool_], other: _ArrayLikeTD64_co) -> NoReturn: ... @overload @@ -2394,7 +2395,7 @@ class ndarray(_ArrayOrScalarCommon, Generic[_ShapeType, _DType_co]): @overload def __imod__(self: NDArray[floating[_NBit1]], other: _ArrayLikeFloat_co) -> NDArray[floating[_NBit1]]: ... @overload - def __imod__(self: NDArray[timedelta64], other: _SupportsArray[dtype[timedelta64]] | _NestedSequence[_SupportsArray[dtype[timedelta64]]]) -> NDArray[timedelta64]: ... + def __imod__(self: NDArray[timedelta64], other: _SupportsArray[_dtype[timedelta64]] | _NestedSequence[_SupportsArray[_dtype[timedelta64]]]) -> NDArray[timedelta64]: ... @overload def __imod__(self: NDArray[object_], other: Any) -> NDArray[object_]: ... @@ -2459,7 +2460,7 @@ class generic(_ArrayOrScalarCommon): @abstractmethod def __init__(self, *args: Any, **kwargs: Any) -> None: ... @overload - def __array__(self: _ScalarType, dtype: None = ..., /) -> ndarray[Any, dtype[_ScalarType]]: ... + def __array__(self: _ScalarType, dtype: None = ..., /) -> ndarray[Any, _dtype[_ScalarType]]: ... @overload def __array__(self, dtype: _DType, /) -> ndarray[Any, _DType]: ... @property @@ -2474,7 +2475,7 @@ class generic(_ArrayOrScalarCommon): def strides(self) -> Tuple[()]: ... def byteswap(self: _ScalarType, inplace: L[False] = ...) -> _ScalarType: ... @property - def flat(self: _ScalarType) -> flatiter[ndarray[Any, dtype[_ScalarType]]]: ... + def flat(self: _ScalarType) -> flatiter[ndarray[Any, _dtype[_ScalarType]]]: ... @overload def astype( @@ -2547,7 +2548,7 @@ class generic(_ArrayOrScalarCommon): axis: Optional[SupportsIndex] = ..., out: None = ..., mode: _ModeKind = ..., - ) -> ndarray[Any, dtype[_ScalarType]]: ... + ) -> ndarray[Any, _dtype[_ScalarType]]: ... @overload def take( self, @@ -2561,26 +2562,26 @@ class generic(_ArrayOrScalarCommon): self: _ScalarType, repeats: _ArrayLikeInt_co, axis: Optional[SupportsIndex] = ..., - ) -> ndarray[Any, dtype[_ScalarType]]: ... + ) -> ndarray[Any, _dtype[_ScalarType]]: ... def flatten( self: _ScalarType, order: _OrderKACF = ..., - ) -> ndarray[Any, dtype[_ScalarType]]: ... + ) -> ndarray[Any, _dtype[_ScalarType]]: ... def ravel( self: _ScalarType, order: _OrderKACF = ..., - ) -> ndarray[Any, dtype[_ScalarType]]: ... + ) -> ndarray[Any, _dtype[_ScalarType]]: ... @overload def reshape( self: _ScalarType, shape: _ShapeLike, /, *, order: _OrderACF = ... - ) -> ndarray[Any, dtype[_ScalarType]]: ... + ) -> ndarray[Any, _dtype[_ScalarType]]: ... @overload def reshape( self: _ScalarType, *shape: SupportsIndex, order: _OrderACF = ... - ) -> ndarray[Any, dtype[_ScalarType]]: ... + ) -> ndarray[Any, _dtype[_ScalarType]]: ... def squeeze( self: _ScalarType, axis: Union[L[0], Tuple[()]] = ... @@ -2588,7 +2589,7 @@ class generic(_ArrayOrScalarCommon): def transpose(self: _ScalarType, axes: Tuple[()] = ..., /) -> _ScalarType: ... # Keep `dtype` at the bottom to avoid name conflicts with `np.dtype` @property - def dtype(self: _ScalarType) -> dtype[_ScalarType]: ... + def dtype(self: _ScalarType) -> _dtype[_ScalarType]: ... class number(generic, Generic[_NBit1]): # type: ignore @property |
