@@ -16,9 +16,9 @@ import numpy as np
16
16
from numpy import _CastingKind , _OrderKACF # noqa: ICN003
17
17
from numpy ._typing import _DTypeLikeBool , _NestedSequence
18
18
19
- from ._array_like import ArrayLike , NDArray , _ArrayLike , _ArrayLikeBool_co , _ArrayLikeInt_co
20
- from ._dtype_like import DTypeLike , _DTypeLike
21
- from ._scalars import _ScalarLike_co
19
+ from ._array_like import ArrayLike , NDArray , _ArrayLike , _ArrayLikeBool_co , _ArrayLikeInt_co , _ArrayLikeNumber_co
20
+ from ._dtype_like import DTypeLike , _DTypeLike , _DTypeLikeObject
21
+ from ._scalars import _NumberLike_co , _ScalarLike_co
22
22
from ._shape import _ShapeLike
23
23
24
24
###
@@ -201,7 +201,7 @@ class _Call11Bool(Protocol):
201
201
dtype : _DTypeLikeBool | None = None ,
202
202
** kwds : Unpack [_Kwargs2 ],
203
203
) -> _ArrayT : ...
204
- @overload # (array) -> Array[bool] | bool
204
+ @overload # (array) -> Array[bool]
205
205
def __call__ (
206
206
self ,
207
207
x : _AnyArray ,
@@ -223,39 +223,72 @@ class _Call11Bool(Protocol):
223
223
) -> NDArray [np .bool ] | np .bool : ...
224
224
225
225
@type_check_only
226
- class _Call11Isnat (Protocol ):
227
- @overload # (scalar) -> bool
228
- def __call__ (
226
+ class _Call11LogicalNot (Protocol ):
227
+ @overload
228
+ def __call__ ( # (scalar, dtype: np.object_) -> np.object_
229
229
self ,
230
- x : _TimeLike ,
230
+ x : _NumberLike_co ,
231
231
/ ,
232
+ dtype : _DTypeLikeObject ,
232
233
out : None = None ,
233
- * ,
234
- dtype : _DTypeLikeBool | None = None ,
235
- ** kwds : Unpack [_Kwargs2 ],
234
+ ** kwargs : Unpack [_Kwargs2 ],
235
+ ) -> np .object_ : ...
236
+ @overload
237
+ def __call__ ( # (scalar) -> bool
238
+ self ,
239
+ x : _NumberLike_co ,
240
+ / ,
241
+ out : None = None ,
242
+ dtype : DTypeLike | None = None ,
243
+ ** kwargs : Unpack [_Kwargs2 ],
236
244
) -> np .bool : ...
237
- @overload # (array-like, out: T) -> T
238
- def __call__ (
245
+ @overload
246
+ def __call__ ( # (array-like, dtype: np.object_) -> np.object_
239
247
self ,
240
- x : _ArrayLike [ _TimeLike ] ,
248
+ x : _ArrayLikeNumber_co ,
241
249
/ ,
242
- out : _Out1 [_ArrayT ],
243
- * ,
244
- dtype : _DTypeLikeBool | None = None ,
245
- ** kwds : Unpack [_Kwargs2 ],
250
+ dtype : _DTypeLikeObject ,
251
+ out : None = None ,
252
+ ** kwargs : Unpack [_Kwargs2 ],
253
+ ) -> np .object_ : ...
254
+ @overload
255
+ def __call__ ( # (array-like, out: T) -> T
256
+ self ,
257
+ x : _ArrayLikeNumber_co ,
258
+ / ,
259
+ out : _ArrayT | tuple [_ArrayT ],
260
+ dtype : DTypeLike | None = None ,
261
+ ** kwargs : Unpack [_Kwargs2 ],
246
262
) -> _ArrayT : ...
247
263
@overload # (array) -> Array[bool]
248
264
def __call__ (
249
265
self ,
250
- x : NDArray [ _TimeLike ] | _NestedSequence [ _TimeLike ] ,
266
+ x : _AnyArray ,
251
267
/ ,
252
268
out : _Out1 [_AnyArray ] | None = None ,
253
269
* ,
254
- dtype : _DTypeLikeBool | None = None ,
270
+ dtype : DTypeLike | None = None ,
255
271
** kwds : Unpack [_Kwargs2 ],
256
272
) -> NDArray [np .bool ]: ...
273
+ @overload
274
+ def __call__ ( # (array-like) -> Array[bool] | bool
275
+ self ,
276
+ x : _ArrayLikeNumber_co ,
277
+ / ,
278
+ out : None = None ,
279
+ dtype : DTypeLike | None = None ,
280
+ ** kwargs : Unpack [_Kwargs2 ],
281
+ ) -> NDArray [np .bool ] | np .bool : ...
282
+ @overload
283
+ def __call__ ( # (?) -> ?
284
+ self ,
285
+ x : _CanArrayUFunc ,
286
+ / ,
287
+ out : _Out1 [_AnyArray ] | None = None ,
288
+ dtype : DTypeLike | None = None ,
289
+ ** kwargs : Unpack [_Kwargs2 ],
290
+ ) -> NDArray [np .bool ] | np .bool : ...
257
291
258
- @type_check_only
259
292
class _Call12 (Protocol ):
260
293
@overload
261
294
def __call__ (
@@ -418,6 +451,113 @@ class _Call21Bool(Protocol):
418
451
** kwds : Unpack [_Kwargs3 ],
419
452
) -> np .bool | NDArray [np .bool ]: ...
420
453
454
+ @type_check_only
455
+ class _Call21Logical (Protocol ):
456
+ @overload # (scalar, scalar, dtype: np.object_) -> np.object_
457
+ def __call__ (
458
+ self ,
459
+ x1 : _NumberLike_co ,
460
+ x2 : _NumberLike_co ,
461
+ / ,
462
+ dtype : _DTypeLikeObject ,
463
+ out : None = None ,
464
+ ** kwds : Unpack [_Kwargs3 ],
465
+ ) -> np .object_ : ...
466
+ @overload # (scalar, scalar) -> bool
467
+ def __call__ (
468
+ self ,
469
+ x1 : _NumberLike_co ,
470
+ x2 : _NumberLike_co ,
471
+ / ,
472
+ out : None = None ,
473
+ dtype : DTypeLike | None = None ,
474
+ ** kwds : Unpack [_Kwargs3 ],
475
+ ) -> np .bool : ...
476
+ @overload # (array-like, array, dtype: np.object_) -> np.object_
477
+ def __call__ (
478
+ self ,
479
+ x1 : _ArrayLikeNumber_co ,
480
+ x2 : _AnyArray ,
481
+ / ,
482
+ dtype : _DTypeLikeObject ,
483
+ out : None = None ,
484
+ ** kwds : Unpack [_Kwargs3 ],
485
+ ) -> np .object_ : ...
486
+ @overload # (array-like, array, dtype: dtype[T]) -> Array[T]
487
+ def __call__ (
488
+ self ,
489
+ x1 : _ArrayLikeNumber_co ,
490
+ x2 : _AnyArray ,
491
+ / ,
492
+ out : None = None ,
493
+ dtype : DTypeLike | None = None ,
494
+ ** kwds : Unpack [_Kwargs3 ],
495
+ ) -> NDArray [np .bool ]: ...
496
+ @overload # (array, array-like, dtype: np.object_) -> np.object_
497
+ def __call__ (
498
+ self ,
499
+ x1 : _AnyArray ,
500
+ x2 : _ArrayLikeNumber_co ,
501
+ / ,
502
+ dtype : _DTypeLikeObject ,
503
+ out : None = None ,
504
+ ** kwds : Unpack [_Kwargs3 ],
505
+ ) -> np .object_ : ...
506
+ @overload # (array, array-like, dtype: dtype[T]) -> Array[T]
507
+ def __call__ (
508
+ self ,
509
+ x1 : _AnyArray ,
510
+ x2 : _ArrayLikeNumber_co ,
511
+ / ,
512
+ out : None = None ,
513
+ dtype : DTypeLike | None = None ,
514
+ ** kwds : Unpack [_Kwargs3 ],
515
+ ) -> NDArray [np .bool ]: ...
516
+ @overload # (array-like, array) -> Array[?]
517
+ def __call__ (
518
+ self ,
519
+ x1 : _ArrayLikeNumber_co ,
520
+ x2 : _AnyArray ,
521
+ / ,
522
+ out : _Out1 [_AnyArray ] | None = None ,
523
+ * ,
524
+ dtype : DTypeLike | None = None ,
525
+ ** kwds : Unpack [_Kwargs3 ],
526
+ ) -> NDArray [np .bool ]: ...
527
+ @overload # (array, array-like) -> Array[?]
528
+ def __call__ (
529
+ self ,
530
+ x1 : _AnyArray ,
531
+ x2 : _ArrayLikeNumber_co ,
532
+ / ,
533
+ out : _Out1 [_AnyArray ] | None = None ,
534
+ * ,
535
+ dtype : DTypeLike | None = None ,
536
+ ** kwds : Unpack [_Kwargs3 ],
537
+ ) -> NDArray [np .bool ]: ...
538
+ @overload # (array-like, array-like, out: T) -> T
539
+ def __call__ (
540
+ self ,
541
+ x1 : _ArrayLikeNumber_co ,
542
+ x2 : ArrayLike ,
543
+ / ,
544
+ out : _ArrayT | tuple [_ArrayT ],
545
+ * ,
546
+ dtype : None = None ,
547
+ ** kwds : Unpack [_Kwargs3 ],
548
+ ) -> _ArrayT : ...
549
+ @overload # (array-like, array-like) -> Array[?] | ?
550
+ def __call__ (
551
+ self ,
552
+ x1 : _ArrayLikeNumber_co ,
553
+ x2 : _ArrayLikeNumber_co ,
554
+ / ,
555
+ out : _Out1 [_AnyArray ] | None = None ,
556
+ * ,
557
+ dtype : DTypeLike | None = None ,
558
+ ** kwds : Unpack [_Kwargs3 ],
559
+ ) -> NDArray [np .bool ] | np .bool : ...
560
+
421
561
@type_check_only
422
562
class _Call21 (Protocol ):
423
563
@overload # (scalar, scalar, dtype: type[T]) -> T
0 commit comments