@@ -102,10 +102,6 @@ def __array__(self, dtype: _DType, /) -> np.ndarray[Any, _DType]:
102
102
...
103
103
104
104
105
- # Corresponds to np.typing.NDArray:
106
- _Array = _array [Any , np .dtype [_ScalarType_co ]]
107
-
108
-
109
105
@runtime_checkable
110
106
class _arrayfunction (
111
107
_array [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -147,10 +143,6 @@ def real(self) -> _arrayfunction[_ShapeType_co, Any]:
147
143
...
148
144
149
145
150
- # Corresponds to np.typing.NDArray:
151
- _ArrayFunction = _arrayfunction [Any , np .dtype [_ScalarType_co ]]
152
-
153
-
154
146
@runtime_checkable
155
147
class _arrayapi (_array [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]):
156
148
"""
@@ -163,20 +155,15 @@ def __array_namespace__(self) -> ModuleType:
163
155
...
164
156
165
157
166
- # Corresponds to np.typing.NDArray:
167
- _ArrayAPI = _arrayapi [Any , np .dtype [_ScalarType_co ]]
168
-
169
158
# NamedArray can most likely use both __array_function__ and __array_namespace__:
170
159
_arrayfunction_or_api = (_arrayfunction , _arrayapi )
171
- # _ArrayFunctionOrAPI = Union[
172
- # _arrayfunction[_ShapeType_co, _DType_co], _arrayapi[_ShapeType_co, _DType_co]
173
- # ]
174
160
175
161
duckarray = Union [
176
162
_arrayfunction [_ShapeType_co , _DType_co ], _arrayapi [_ShapeType_co , _DType_co ]
177
163
]
164
+
165
+ # Corresponds to np.typing.NDArray:
178
166
DuckArray = _arrayfunction [Any , np .dtype [_ScalarType_co ]]
179
- T_DuckArray = TypeVar ("T_DuckArray" , bound = _arrayfunction [Any , Any ])
180
167
181
168
182
169
@runtime_checkable
@@ -194,10 +181,6 @@ def chunks(self) -> _Chunks:
194
181
...
195
182
196
183
197
- # Corresponds to np.typing.NDArray:
198
- _ChunkedArray = _chunkedarray [Any , np .dtype [_ScalarType_co ]]
199
-
200
-
201
184
@runtime_checkable
202
185
class _chunkedarrayfunction (
203
186
_arrayfunction [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -213,10 +196,6 @@ def chunks(self) -> _Chunks:
213
196
...
214
197
215
198
216
- # Corresponds to np.typing.NDArray:
217
- _ChunkedArrayFunction = _chunkedarrayfunction [Any , np .dtype [_ScalarType_co ]]
218
-
219
-
220
199
@runtime_checkable
221
200
class _chunkedarrayapi (
222
201
_arrayapi [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -232,8 +211,12 @@ def chunks(self) -> _Chunks:
232
211
...
233
212
234
213
235
- # Corresponds to np.typing.NDArray:
236
- _ChunkedArrayAPI = _chunkedarrayapi [Any , np .dtype [_ScalarType_co ]]
214
+ # NamedArray can most likely use both __array_function__ and __array_namespace__:
215
+ _chunkedarrayfunction_or_api = (_chunkedarrayfunction , _chunkedarrayapi )
216
+ chunkedduckarray = Union [
217
+ _chunkedarrayfunction [_ShapeType_co , _DType_co ],
218
+ _chunkedarrayapi [_ShapeType_co , _DType_co ],
219
+ ]
237
220
238
221
239
222
@runtime_checkable
@@ -250,10 +233,6 @@ def todense(self) -> NDArray[_ScalarType_co]:
250
233
...
251
234
252
235
253
- # Corresponds to np.typing.NDArray:
254
- _SparseArray = _sparsearray [Any , np .dtype [_ScalarType_co ]]
255
-
256
-
257
236
@runtime_checkable
258
237
class _sparsearrayfunction (
259
238
_arrayfunction [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -268,10 +247,6 @@ def todense(self) -> NDArray[_ScalarType_co]:
268
247
...
269
248
270
249
271
- # Corresponds to np.typing.NDArray:
272
- _SparseArrayFunction = _sparsearrayfunction [Any , np .dtype [_ScalarType_co ]]
273
-
274
-
275
250
@runtime_checkable
276
251
class _sparsearrayapi (
277
252
_arrayapi [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -286,22 +261,5 @@ def todense(self) -> NDArray[_ScalarType_co]:
286
261
...
287
262
288
263
289
- # Corresponds to np.typing.NDArray:
290
- _SparseArrayAPI = _sparsearrayapi [Any , np .dtype [_ScalarType_co ]]
291
-
292
264
# NamedArray can most likely use both __array_function__ and __array_namespace__:
293
265
_sparsearrayfunction_or_api = (_sparsearrayfunction , _sparsearrayapi )
294
- _SparseArrayFunctionOrAPI = Union [
295
- _SparseArrayFunction [np .generic ], _SparseArrayAPI [np .generic ]
296
- ]
297
-
298
-
299
- # Temporary placeholder for indicating an array api compliant type.
300
- # hopefully in the future we can narrow this down more
301
- # T_DuckArray = TypeVar("T_DuckArray", bound=_ArrayFunctionOrAPI)
302
-
303
- # The chunked arrays like dask or cubed:
304
- _ChunkedArrayFunctionOrAPI = Union [
305
- _ChunkedArrayFunction [np .generic ], _ChunkedArrayAPI [np .generic ]
306
- ]
307
- T_ChunkedArray = TypeVar ("T_ChunkedArray" , bound = _ChunkedArrayFunctionOrAPI )
0 commit comments