|
5 | 5 | import decimal |
6 | 6 | import fractions |
7 | 7 | from collections.abc import Sequence |
8 | | -from typing import Any, Never, TypeAlias, type_check_only |
| 8 | +from typing import Any, TypeAlias, type_check_only |
9 | 9 | from typing_extensions import Protocol, TypeAliasType, TypeVar |
10 | 10 |
|
11 | 11 | import numpy as np |
12 | 12 | from numpy._typing import _NestedSequence |
13 | 13 |
|
14 | 14 | from . import op as op |
| 15 | +from ._array import ( |
| 16 | + Array as Array, |
| 17 | + Array0D as Array0D, |
| 18 | + Array1D as Array1D, |
| 19 | + Array2D as Array2D, |
| 20 | + Array3D as Array3D, |
| 21 | + Array4D as Array4D, |
| 22 | + MArray as MArray, |
| 23 | + MArray0D as MArray0D, |
| 24 | + MArray1D as MArray1D, |
| 25 | + MArray2D as MArray2D, |
| 26 | + MArray3D as MArray3D, |
| 27 | + Matrix as Matrix, |
| 28 | + StringArray as StringArray, |
| 29 | + StringArray0D as StringArray0D, |
| 30 | + StringArray1D as StringArray1D, |
| 31 | + StringArray2D as StringArray2D, |
| 32 | + StringArray3D as StringArray3D, |
| 33 | + StringArrayND as StringArrayND, |
| 34 | +) |
15 | 35 | from ._dtype import ( |
16 | 36 | ToDType as ToDType, |
17 | 37 | ToDTypeBool as ToDTypeBool, |
@@ -135,12 +155,9 @@ from ._shape import ( |
135 | 155 | # Type parameters |
136 | 156 |
|
137 | 157 | _T = TypeVar("_T") |
138 | | -_ShapeT = TypeVar("_ShapeT", bound=Shape, default=Shape) |
139 | 158 | _ShapeT_co = TypeVar("_ShapeT_co", bound=Shape, covariant=True) |
140 | 159 | _ScalarT = TypeVar("_ScalarT", bound=np.generic) |
141 | 160 | _ScalarT_co = TypeVar("_ScalarT_co", bound=np.generic, covariant=True) |
142 | | -_ScalarT0 = TypeVar("_ScalarT0", bound=np.generic, default=Any) |
143 | | -_NaT = TypeVar("_NaT", default=Never) |
144 | 161 | _NaT0 = TypeVar("_NaT0", default=Any) |
145 | 162 | _NaT_co = TypeVar("_NaT_co", covariant=True) |
146 | 163 | _ToT = TypeVar("_ToT") |
@@ -195,55 +212,6 @@ Sequence1ND: TypeAlias = _NestedSequence[_T] |
195 | 212 | Sequence2ND: TypeAlias = Sequence[_NestedSequence[_T]] |
196 | 213 | Sequence3ND: TypeAlias = Sequence[Sequence[_NestedSequence[_T]]] |
197 | 214 |
|
198 | | -### |
199 | | -# Shape-typed array aliases |
200 | | - |
201 | | -Array = TypeAliasType("Array", np.ndarray[_ShapeT, np.dtype[_ScalarT0]], type_params=(_ScalarT0, _ShapeT)) |
202 | | -Array0D = TypeAliasType("Array0D", np.ndarray[Shape0, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
203 | | -Array1D = TypeAliasType("Array1D", np.ndarray[Shape1, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
204 | | -Array2D = TypeAliasType("Array2D", np.ndarray[Shape2, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
205 | | -Array3D = TypeAliasType("Array3D", np.ndarray[Shape3, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
206 | | -Array4D = TypeAliasType("Array4D", np.ndarray[Shape4, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
207 | | - |
208 | | -MArray = TypeAliasType("MArray", np.ma.MaskedArray[_ShapeT, np.dtype[_ScalarT0]], type_params=(_ScalarT0, _ShapeT)) |
209 | | -MArray0D = TypeAliasType("MArray0D", np.ma.MaskedArray[Shape0, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
210 | | -MArray1D = TypeAliasType("MArray1D", np.ma.MaskedArray[Shape1, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
211 | | -MArray2D = TypeAliasType("MArray2D", np.ma.MaskedArray[Shape2, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
212 | | -MArray3D = TypeAliasType("MArray3D", np.ma.MaskedArray[Shape3, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
213 | | - |
214 | | -Matrix = TypeAliasType("Matrix", np.matrix[Shape2, np.dtype[_ScalarT0]], type_params=(_ScalarT0,)) |
215 | | - |
216 | | -StringArray = TypeAliasType( |
217 | | - "StringArray", |
218 | | - np.ndarray[_ShapeT, np.dtypes.StringDType[_NaT]], |
219 | | - type_params=(_ShapeT, _NaT), |
220 | | -) |
221 | | -StringArray0D = TypeAliasType( |
222 | | - "StringArray0D", |
223 | | - np.ndarray[Shape0, np.dtypes.StringDType[_NaT]], |
224 | | - type_params=(_NaT,), |
225 | | -) |
226 | | -StringArray1D = TypeAliasType( |
227 | | - "StringArray1D", |
228 | | - np.ndarray[Shape1, np.dtypes.StringDType[_NaT]], |
229 | | - type_params=(_NaT,), |
230 | | -) |
231 | | -StringArray2D = TypeAliasType( |
232 | | - "StringArray2D", |
233 | | - np.ndarray[Shape2, np.dtypes.StringDType[_NaT]], |
234 | | - type_params=(_NaT,), |
235 | | -) |
236 | | -StringArray3D = TypeAliasType( |
237 | | - "StringArray3D", |
238 | | - np.ndarray[Shape3, np.dtypes.StringDType[_NaT]], |
239 | | - type_params=(_NaT,), |
240 | | -) |
241 | | -StringArrayND = TypeAliasType( |
242 | | - "StringArrayND", |
243 | | - np.ndarray[Shape, np.dtypes.StringDType[_NaT]], |
244 | | - type_params=(_NaT,), |
245 | | -) |
246 | | - |
247 | 215 | ### |
248 | 216 | # helper aliases |
249 | 217 |
|
|
0 commit comments