@@ -103,10 +103,6 @@ def __array__(self, dtype: _DType, /) -> np.ndarray[Any, _DType]:
103
103
...
104
104
105
105
106
- # Corresponds to np.typing.NDArray:
107
- _Array = _array [Any , np .dtype [_ScalarType_co ]]
108
-
109
-
110
106
@runtime_checkable
111
107
class _arrayfunction (
112
108
_array [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -148,10 +144,6 @@ def real(self) -> _arrayfunction[_ShapeType_co, Any]:
148
144
...
149
145
150
146
151
- # Corresponds to np.typing.NDArray:
152
- _ArrayFunction = _arrayfunction [Any , np .dtype [_ScalarType_co ]]
153
-
154
-
155
147
@runtime_checkable
156
148
class _arrayapi (_array [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]):
157
149
"""
@@ -164,20 +156,15 @@ def __array_namespace__(self) -> ModuleType:
164
156
...
165
157
166
158
167
- # Corresponds to np.typing.NDArray:
168
- _ArrayAPI = _arrayapi [Any , np .dtype [_ScalarType_co ]]
169
-
170
159
# NamedArray can most likely use both __array_function__ and __array_namespace__:
171
160
_arrayfunction_or_api = (_arrayfunction , _arrayapi )
172
- # _ArrayFunctionOrAPI = Union[
173
- # _arrayfunction[_ShapeType_co, _DType_co], _arrayapi[_ShapeType_co, _DType_co]
174
- # ]
175
161
176
162
duckarray = Union [
177
163
_arrayfunction [_ShapeType_co , _DType_co ], _arrayapi [_ShapeType_co , _DType_co ]
178
164
]
165
+
166
+ # Corresponds to np.typing.NDArray:
179
167
DuckArray = _arrayfunction [Any , np .dtype [_ScalarType_co ]]
180
- T_DuckArray = TypeVar ("T_DuckArray" , bound = _arrayfunction [Any , Any ])
181
168
182
169
183
170
@runtime_checkable
@@ -195,10 +182,6 @@ def chunks(self) -> _Chunks:
195
182
...
196
183
197
184
198
- # Corresponds to np.typing.NDArray:
199
- _ChunkedArray = _chunkedarray [Any , np .dtype [_ScalarType_co ]]
200
-
201
-
202
185
@runtime_checkable
203
186
class _chunkedarrayfunction (
204
187
_arrayfunction [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -214,10 +197,6 @@ def chunks(self) -> _Chunks:
214
197
...
215
198
216
199
217
- # Corresponds to np.typing.NDArray:
218
- _ChunkedArrayFunction = _chunkedarrayfunction [Any , np .dtype [_ScalarType_co ]]
219
-
220
-
221
200
@runtime_checkable
222
201
class _chunkedarrayapi (
223
202
_arrayapi [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -233,8 +212,12 @@ def chunks(self) -> _Chunks:
233
212
...
234
213
235
214
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
+ ]
238
221
239
222
240
223
@runtime_checkable
@@ -251,10 +234,6 @@ def todense(self) -> NDArray[_ScalarType_co]:
251
234
...
252
235
253
236
254
- # Corresponds to np.typing.NDArray:
255
- _SparseArray = _sparsearray [Any , np .dtype [_ScalarType_co ]]
256
-
257
-
258
237
@runtime_checkable
259
238
class _sparsearrayfunction (
260
239
_arrayfunction [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -269,10 +248,6 @@ def todense(self) -> NDArray[_ScalarType_co]:
269
248
...
270
249
271
250
272
- # Corresponds to np.typing.NDArray:
273
- _SparseArrayFunction = _sparsearrayfunction [Any , np .dtype [_ScalarType_co ]]
274
-
275
-
276
251
@runtime_checkable
277
252
class _sparsearrayapi (
278
253
_arrayapi [_ShapeType_co , _DType_co ], Protocol [_ShapeType_co , _DType_co ]
@@ -287,22 +262,5 @@ def todense(self) -> NDArray[_ScalarType_co]:
287
262
...
288
263
289
264
290
- # Corresponds to np.typing.NDArray:
291
- _SparseArrayAPI = _sparsearrayapi [Any , np .dtype [_ScalarType_co ]]
292
-
293
265
# NamedArray can most likely use both __array_function__ and __array_namespace__:
294
266
_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