Skip to content

Commit b6d7756

Browse files
authored
Merge branch 'main' into namedarray-parallelcompat
2 parents ed4698c + 043b3dc commit b6d7756

File tree

1 file changed

+8
-50
lines changed

1 file changed

+8
-50
lines changed

xarray/namedarray/_typing.py

Lines changed: 8 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,6 @@ def __array__(self, dtype: _DType, /) -> np.ndarray[Any, _DType]:
103103
...
104104

105105

106-
# Corresponds to np.typing.NDArray:
107-
_Array = _array[Any, np.dtype[_ScalarType_co]]
108-
109-
110106
@runtime_checkable
111107
class _arrayfunction(
112108
_array[_ShapeType_co, _DType_co], Protocol[_ShapeType_co, _DType_co]
@@ -148,10 +144,6 @@ def real(self) -> _arrayfunction[_ShapeType_co, Any]:
148144
...
149145

150146

151-
# Corresponds to np.typing.NDArray:
152-
_ArrayFunction = _arrayfunction[Any, np.dtype[_ScalarType_co]]
153-
154-
155147
@runtime_checkable
156148
class _arrayapi(_array[_ShapeType_co, _DType_co], Protocol[_ShapeType_co, _DType_co]):
157149
"""
@@ -164,20 +156,15 @@ def __array_namespace__(self) -> ModuleType:
164156
...
165157

166158

167-
# Corresponds to np.typing.NDArray:
168-
_ArrayAPI = _arrayapi[Any, np.dtype[_ScalarType_co]]
169-
170159
# NamedArray can most likely use both __array_function__ and __array_namespace__:
171160
_arrayfunction_or_api = (_arrayfunction, _arrayapi)
172-
# _ArrayFunctionOrAPI = Union[
173-
# _arrayfunction[_ShapeType_co, _DType_co], _arrayapi[_ShapeType_co, _DType_co]
174-
# ]
175161

176162
duckarray = Union[
177163
_arrayfunction[_ShapeType_co, _DType_co], _arrayapi[_ShapeType_co, _DType_co]
178164
]
165+
166+
# Corresponds to np.typing.NDArray:
179167
DuckArray = _arrayfunction[Any, np.dtype[_ScalarType_co]]
180-
T_DuckArray = TypeVar("T_DuckArray", bound=_arrayfunction[Any, Any])
181168

182169

183170
@runtime_checkable
@@ -195,10 +182,6 @@ def chunks(self) -> _Chunks:
195182
...
196183

197184

198-
# Corresponds to np.typing.NDArray:
199-
_ChunkedArray = _chunkedarray[Any, np.dtype[_ScalarType_co]]
200-
201-
202185
@runtime_checkable
203186
class _chunkedarrayfunction(
204187
_arrayfunction[_ShapeType_co, _DType_co], Protocol[_ShapeType_co, _DType_co]
@@ -214,10 +197,6 @@ def chunks(self) -> _Chunks:
214197
...
215198

216199

217-
# Corresponds to np.typing.NDArray:
218-
_ChunkedArrayFunction = _chunkedarrayfunction[Any, np.dtype[_ScalarType_co]]
219-
220-
221200
@runtime_checkable
222201
class _chunkedarrayapi(
223202
_arrayapi[_ShapeType_co, _DType_co], Protocol[_ShapeType_co, _DType_co]
@@ -233,8 +212,12 @@ def chunks(self) -> _Chunks:
233212
...
234213

235214

236-
# Corresponds to np.typing.NDArray:
237-
_ChunkedArrayAPI = _chunkedarrayapi[Any, np.dtype[_ScalarType_co]]
215+
# NamedArray can most likely use both __array_function__ and __array_namespace__:
216+
_chunkedarrayfunction_or_api = (_chunkedarrayfunction, _chunkedarrayapi)
217+
chunkedduckarray = Union[
218+
_chunkedarrayfunction[_ShapeType_co, _DType_co],
219+
_chunkedarrayapi[_ShapeType_co, _DType_co],
220+
]
238221

239222

240223
@runtime_checkable
@@ -251,10 +234,6 @@ def todense(self) -> NDArray[_ScalarType_co]:
251234
...
252235

253236

254-
# Corresponds to np.typing.NDArray:
255-
_SparseArray = _sparsearray[Any, np.dtype[_ScalarType_co]]
256-
257-
258237
@runtime_checkable
259238
class _sparsearrayfunction(
260239
_arrayfunction[_ShapeType_co, _DType_co], Protocol[_ShapeType_co, _DType_co]
@@ -269,10 +248,6 @@ def todense(self) -> NDArray[_ScalarType_co]:
269248
...
270249

271250

272-
# Corresponds to np.typing.NDArray:
273-
_SparseArrayFunction = _sparsearrayfunction[Any, np.dtype[_ScalarType_co]]
274-
275-
276251
@runtime_checkable
277252
class _sparsearrayapi(
278253
_arrayapi[_ShapeType_co, _DType_co], Protocol[_ShapeType_co, _DType_co]
@@ -287,22 +262,5 @@ def todense(self) -> NDArray[_ScalarType_co]:
287262
...
288263

289264

290-
# Corresponds to np.typing.NDArray:
291-
_SparseArrayAPI = _sparsearrayapi[Any, np.dtype[_ScalarType_co]]
292-
293265
# NamedArray can most likely use both __array_function__ and __array_namespace__:
294266
_sparsearrayfunction_or_api = (_sparsearrayfunction, _sparsearrayapi)
295-
_SparseArrayFunctionOrAPI = Union[
296-
_SparseArrayFunction[np.generic], _SparseArrayAPI[np.generic]
297-
]
298-
299-
300-
# Temporary placeholder for indicating an array api compliant type.
301-
# hopefully in the future we can narrow this down more
302-
# T_DuckArray = TypeVar("T_DuckArray", bound=_ArrayFunctionOrAPI)
303-
304-
# The chunked arrays like dask or cubed:
305-
_ChunkedArrayFunctionOrAPI = Union[
306-
_ChunkedArrayFunction[np.generic], _ChunkedArrayAPI[np.generic]
307-
]
308-
T_ChunkedArray = TypeVar("T_ChunkedArray", bound=_ChunkedArrayFunctionOrAPI)

0 commit comments

Comments
 (0)