Skip to content

Commit ffc0338

Browse files
authored
💥 use the new Rank* types in _numtype.Array* (#544)
2 parents 9d3b931 + e173bce commit ffc0338

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+8750
-8803
lines changed

‎src/_numtype/__init__.pyi

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,13 @@ from ._array import (
1919
Array2D as Array2D,
2020
Array3D as Array3D,
2121
Array4D as Array4D,
22+
ArrayND as ArrayND,
2223
MArray as MArray,
2324
MArray0D as MArray0D,
2425
MArray1D as MArray1D,
2526
MArray2D as MArray2D,
2627
MArray3D as MArray3D,
28+
MArrayND as MArrayND,
2729
Matrix as Matrix,
2830
StringArray as StringArray,
2931
StringArray0D as StringArray0D,

‎src/_numtype/_array.pyi

Lines changed: 26 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ from typing_extensions import TypeAliasType, TypeVar
55

66
import numpy as np
77

8-
from ._shape import Shape, Shape0, Shape1, Shape2, Shape3, Shape4
8+
from ._rank import Rank, Rank0, Rank1, Rank2, Rank3, Rank4
9+
from ._shape import Shape
910

1011
__all__ = [
1112
"Array",
@@ -14,11 +15,13 @@ __all__ = [
1415
"Array2D",
1516
"Array3D",
1617
"Array4D",
18+
"ArrayND",
1719
"MArray",
1820
"MArray0D",
1921
"MArray1D",
2022
"MArray2D",
2123
"MArray3D",
24+
"MArrayND",
2225
"Matrix",
2326
"StringArray",
2427
"StringArray0D",
@@ -30,60 +33,62 @@ __all__ = [
3033

3134
###
3235

33-
_ShapeT = TypeVar("_ShapeT", bound=Shape, default=Shape)
36+
_RankT = TypeVar("_RankT", bound=Shape, default=Shape)
3437
_ScalarT = TypeVar("_ScalarT", bound=np.generic, default=Any)
3538
_NaT = TypeVar("_NaT", default=Never)
3639

3740
###
3841

39-
Array = TypeAliasType("Array", np.ndarray[_ShapeT, np.dtype[_ScalarT]], type_params=(_ScalarT, _ShapeT))
40-
Array0D = TypeAliasType("Array0D", np.ndarray[Shape0, np.dtype[_ScalarT]], type_params=(_ScalarT,))
41-
Array1D = TypeAliasType("Array1D", np.ndarray[Shape1, np.dtype[_ScalarT]], type_params=(_ScalarT,))
42-
Array2D = TypeAliasType("Array2D", np.ndarray[Shape2, np.dtype[_ScalarT]], type_params=(_ScalarT,))
43-
Array3D = TypeAliasType("Array3D", np.ndarray[Shape3, np.dtype[_ScalarT]], type_params=(_ScalarT,))
44-
Array4D = TypeAliasType("Array4D", np.ndarray[Shape4, np.dtype[_ScalarT]], type_params=(_ScalarT,))
42+
Array = TypeAliasType("Array", np.ndarray[_RankT, np.dtype[_ScalarT]], type_params=(_ScalarT, _RankT))
43+
Array0D = TypeAliasType("Array0D", np.ndarray[Rank0, np.dtype[_ScalarT]], type_params=(_ScalarT,))
44+
Array1D = TypeAliasType("Array1D", np.ndarray[Rank1, np.dtype[_ScalarT]], type_params=(_ScalarT,))
45+
Array2D = TypeAliasType("Array2D", np.ndarray[Rank2, np.dtype[_ScalarT]], type_params=(_ScalarT,))
46+
Array3D = TypeAliasType("Array3D", np.ndarray[Rank3, np.dtype[_ScalarT]], type_params=(_ScalarT,))
47+
Array4D = TypeAliasType("Array4D", np.ndarray[Rank4, np.dtype[_ScalarT]], type_params=(_ScalarT,))
48+
ArrayND = TypeAliasType("ArrayND", np.ndarray[Rank, np.dtype[_ScalarT]], type_params=(_ScalarT,))
4549

4650
###
4751

48-
Matrix = TypeAliasType("Matrix", np.matrix[Shape2, np.dtype[_ScalarT]], type_params=(_ScalarT,))
52+
Matrix = TypeAliasType("Matrix", np.matrix[Rank2, np.dtype[_ScalarT]], type_params=(_ScalarT,))
4953

5054
###
5155

52-
MArray = TypeAliasType("MArray", np.ma.MaskedArray[_ShapeT, np.dtype[_ScalarT]], type_params=(_ScalarT, _ShapeT))
53-
MArray0D = TypeAliasType("MArray0D", np.ma.MaskedArray[Shape0, np.dtype[_ScalarT]], type_params=(_ScalarT,))
54-
MArray1D = TypeAliasType("MArray1D", np.ma.MaskedArray[Shape1, np.dtype[_ScalarT]], type_params=(_ScalarT,))
55-
MArray2D = TypeAliasType("MArray2D", np.ma.MaskedArray[Shape2, np.dtype[_ScalarT]], type_params=(_ScalarT,))
56-
MArray3D = TypeAliasType("MArray3D", np.ma.MaskedArray[Shape3, np.dtype[_ScalarT]], type_params=(_ScalarT,))
56+
MArray = TypeAliasType("MArray", np.ma.MaskedArray[_RankT, np.dtype[_ScalarT]], type_params=(_ScalarT, _RankT))
57+
MArray0D = TypeAliasType("MArray0D", np.ma.MaskedArray[Rank0, np.dtype[_ScalarT]], type_params=(_ScalarT,))
58+
MArray1D = TypeAliasType("MArray1D", np.ma.MaskedArray[Rank1, np.dtype[_ScalarT]], type_params=(_ScalarT,))
59+
MArray2D = TypeAliasType("MArray2D", np.ma.MaskedArray[Rank2, np.dtype[_ScalarT]], type_params=(_ScalarT,))
60+
MArray3D = TypeAliasType("MArray3D", np.ma.MaskedArray[Rank3, np.dtype[_ScalarT]], type_params=(_ScalarT,))
61+
MArrayND = TypeAliasType("MArrayND", np.ma.MaskedArray[Rank, np.dtype[_ScalarT]], type_params=(_ScalarT, _RankT))
5762

5863
###
5964

6065
StringArray = TypeAliasType(
6166
"StringArray",
62-
np.ndarray[_ShapeT, np.dtypes.StringDType[_NaT]],
63-
type_params=(_ShapeT, _NaT),
67+
np.ndarray[_RankT, np.dtypes.StringDType[_NaT]],
68+
type_params=(_RankT, _NaT),
6469
)
6570
StringArray0D = TypeAliasType(
6671
"StringArray0D",
67-
np.ndarray[Shape0, np.dtypes.StringDType[_NaT]],
72+
np.ndarray[Rank0, np.dtypes.StringDType[_NaT]],
6873
type_params=(_NaT,),
6974
)
7075
StringArray1D = TypeAliasType(
7176
"StringArray1D",
72-
np.ndarray[Shape1, np.dtypes.StringDType[_NaT]],
77+
np.ndarray[Rank1, np.dtypes.StringDType[_NaT]],
7378
type_params=(_NaT,),
7479
)
7580
StringArray2D = TypeAliasType(
7681
"StringArray2D",
77-
np.ndarray[Shape2, np.dtypes.StringDType[_NaT]],
82+
np.ndarray[Rank2, np.dtypes.StringDType[_NaT]],
7883
type_params=(_NaT,),
7984
)
8085
StringArray3D = TypeAliasType(
8186
"StringArray3D",
82-
np.ndarray[Shape3, np.dtypes.StringDType[_NaT]],
87+
np.ndarray[Rank3, np.dtypes.StringDType[_NaT]],
8388
type_params=(_NaT,),
8489
)
8590
StringArrayND = TypeAliasType(
8691
"StringArrayND",
87-
np.ndarray[Shape, np.dtypes.StringDType[_NaT]],
92+
np.ndarray[Rank, np.dtypes.StringDType[_NaT]],
8893
type_params=(_NaT,),
8994
)

‎src/numpy-stubs/@test/generated/ndarray_abs.pyi

Lines changed: 45 additions & 44 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)