@@ -10,6 +10,7 @@ from typing import (
10
10
Container ,
11
11
Callable ,
12
12
Dict ,
13
+ Generic ,
13
14
IO ,
14
15
Iterable ,
15
16
List ,
@@ -28,14 +29,18 @@ from typing import (
28
29
TypeVar ,
29
30
Union ,
30
31
)
31
- from typing_extensions import Literal
32
32
33
33
if sys .version_info [0 ] < 3 :
34
34
class SupportsBytes : ...
35
35
36
36
else :
37
37
from typing import SupportsBytes
38
38
39
+ if sys .version_info >= (3 , 8 ):
40
+ from typing import Literal
41
+ else :
42
+ from typing_extensions import Literal
43
+
39
44
_Shape = Tuple [int , ...]
40
45
41
46
# Anything that can be coerced to a shape tuple
@@ -620,8 +625,8 @@ WRAP: int
620
625
little_endian : int
621
626
tracemalloc_domain : int
622
627
623
- _Nin = TypeVar (' _Nin' , bound = int )
624
- _Nout = TypeVar (' _Nout' , bound = int )
628
+ _Nin = TypeVar (" _Nin" , bound = int )
629
+ _Nout = TypeVar (" _Nout" , bound = int )
625
630
626
631
class ufunc (Generic [_Nin ], Generic [_Nout ]):
627
632
@property
@@ -650,11 +655,11 @@ class ufunc(Generic[_Nin], Generic[_Nout]):
650
655
# int, an int, and a callable, but there's no way to express
651
656
# that.
652
657
extobj : List [Union [int , Callable ]] = ...,
653
- ) -> Union [ndarray , generic ]: ...
658
+ ) -> Union [ndarray , generic , Tuple [ Union [ ndarray , generic ], ...] ]: ...
654
659
@property
655
- def nin (self ) -> int : ...
660
+ def nin (self ) -> _Nin : ...
656
661
@property
657
- def nout (self ) -> int : ...
662
+ def nout (self ) -> _Nout : ...
658
663
@property
659
664
def nargs (self ) -> int : ...
660
665
@property
@@ -693,92 +698,92 @@ class ufunc(Generic[_Nin], Generic[_Nout]):
693
698
@property
694
699
def at (self ) -> Any : ...
695
700
696
- absolute : ufunc
697
- add : ufunc
698
- arccos : ufunc
699
- arccosh : ufunc
700
- arcsin : ufunc
701
- arcsinh : ufunc
702
- arctan2 : ufunc
703
- arctan : ufunc
704
- arctanh : ufunc
705
- bitwise_and : ufunc
706
- bitwise_or : ufunc
707
- bitwise_xor : ufunc
708
- cbrt : ufunc
709
- ceil : ufunc
710
- conjugate : ufunc
711
- copysign : ufunc
712
- cos : ufunc
713
- cosh : ufunc
714
- deg2rad : ufunc
715
- degrees : ufunc
716
- divmod : ufunc
717
- equal : ufunc
718
- exp2 : ufunc
719
- exp : ufunc
720
- expm1 : ufunc
721
- fabs : ufunc
722
- float_power : ufunc
723
- floor : ufunc
724
- floor_divide : ufunc
725
- fmax : ufunc
726
- fmin : ufunc
727
- fmod : ufunc
728
- frexp : ufunc
729
- gcd : ufunc
730
- greater : ufunc
731
- greater_equal : ufunc
732
- heaviside : ufunc
733
- hypot : ufunc
734
- invert : ufunc
735
- isfinite : ufunc
736
- isinf : ufunc
737
- isnan : ufunc
738
- isnat : ufunc
739
- lcm : ufunc
740
- ldexp : ufunc
741
- left_shift : ufunc
742
- less : ufunc
743
- less_equal : ufunc
744
- log10 : ufunc
745
- log1p : ufunc
746
- log2 : ufunc
747
- log : ufunc
748
- logaddexp2 : ufunc
749
- logaddexp : ufunc
750
- logical_and : ufunc
751
- logical_not : ufunc
752
- logical_or : ufunc
753
- logical_xor : ufunc
754
- matmul : ufunc
755
- maximum : ufunc
756
- minimum : ufunc
757
- modf : ufunc
758
- multiply : ufunc
759
- negative : ufunc
760
- nextafter : ufunc
761
- not_equal : ufunc
762
- positive : ufunc
763
- power : ufunc
764
- rad2deg : ufunc
765
- radians : ufunc
766
- reciprocal : ufunc
767
- remainder : ufunc
768
- right_shift : ufunc
769
- rint : ufunc
770
- sign : ufunc
771
- signbit : ufunc
701
+ absolute : ufunc [ Literal [ 1 ], Literal [ 1 ]]
702
+ add : ufunc [ Literal [ 2 ], Literal [ 1 ]]
703
+ arccos : ufunc [ Literal [ 1 ], Literal [ 1 ]]
704
+ arccosh : ufunc [ Literal [ 1 ], Literal [ 1 ]]
705
+ arcsin : ufunc [ Literal [ 1 ], Literal [ 1 ]]
706
+ arcsinh : ufunc [ Literal [ 1 ], Literal [ 1 ]]
707
+ arctan2 : ufunc [ Literal [ 2 ], Literal [ 1 ]]
708
+ arctan : ufunc [ Literal [ 1 ], Literal [ 1 ]]
709
+ arctanh : ufunc [ Literal [ 1 ], Literal [ 1 ]]
710
+ bitwise_and : ufunc [ Literal [ 2 ], Literal [ 1 ]]
711
+ bitwise_or : ufunc [ Literal [ 2 ], Literal [ 1 ]]
712
+ bitwise_xor : ufunc [ Literal [ 2 ], Literal [ 1 ]]
713
+ cbrt : ufunc [ Literal [ 1 ], Literal [ 1 ]]
714
+ ceil : ufunc [ Literal [ 1 ], Literal [ 1 ]]
715
+ conjugate : ufunc [ Literal [ 1 ], Literal [ 1 ]]
716
+ copysign : ufunc [ Literal [ 2 ], Literal [ 1 ]]
717
+ cos : ufunc [ Literal [ 1 ], Literal [ 1 ]]
718
+ cosh : ufunc [ Literal [ 1 ], Literal [ 1 ]]
719
+ deg2rad : ufunc [ Literal [ 1 ], Literal [ 1 ]]
720
+ degrees : ufunc [ Literal [ 1 ], Literal [ 1 ]]
721
+ divmod : ufunc [ Literal [ 2 ], Literal [ 2 ]]
722
+ equal : ufunc [ Literal [ 2 ], Literal [ 1 ]]
723
+ exp2 : ufunc [ Literal [ 1 ], Literal [ 1 ]]
724
+ exp : ufunc [ Literal [ 1 ], Literal [ 1 ]]
725
+ expm1 : ufunc [ Literal [ 1 ], Literal [ 1 ]]
726
+ fabs : ufunc [ Literal [ 1 ], Literal [ 1 ]]
727
+ float_power : ufunc [ Literal [ 2 ], Literal [ 1 ]]
728
+ floor : ufunc [ Literal [ 1 ], Literal [ 1 ]]
729
+ floor_divide : ufunc [ Literal [ 2 ], Literal [ 1 ]]
730
+ fmax : ufunc [ Literal [ 2 ], Literal [ 1 ]]
731
+ fmin : ufunc [ Literal [ 2 ], Literal [ 1 ]]
732
+ fmod : ufunc [ Literal [ 2 ], Literal [ 1 ]]
733
+ frexp : ufunc [ Literal [ 1 ], Literal [ 2 ]]
734
+ gcd : ufunc [ Literal [ 2 ], Literal [ 1 ]]
735
+ greater : ufunc [ Literal [ 2 ], Literal [ 1 ]]
736
+ greater_equal : ufunc [ Literal [ 2 ], Literal [ 1 ]]
737
+ heaviside : ufunc [ Literal [ 2 ], Literal [ 1 ]]
738
+ hypot : ufunc [ Literal [ 2 ], Literal [ 1 ]]
739
+ invert : ufunc [ Literal [ 1 ], Literal [ 1 ]]
740
+ isfinite : ufunc [ Literal [ 1 ], Literal [ 1 ]]
741
+ isinf : ufunc [ Literal [ 1 ], Literal [ 1 ]]
742
+ isnan : ufunc [ Literal [ 1 ], Literal [ 1 ]]
743
+ isnat : ufunc [ Literal [ 1 ], Literal [ 1 ]]
744
+ lcm : ufunc [ Literal [ 2 ], Literal [ 1 ]]
745
+ ldexp : ufunc [ Literal [ 2 ], Literal [ 1 ]]
746
+ left_shift : ufunc [ Literal [ 2 ], Literal [ 1 ]]
747
+ less : ufunc [ Literal [ 2 ], Literal [ 1 ]]
748
+ less_equal : ufunc [ Literal [ 2 ], Literal [ 1 ]]
749
+ log10 : ufunc [ Literal [ 1 ], Literal [ 1 ]]
750
+ log1p : ufunc [ Literal [ 1 ], Literal [ 1 ]]
751
+ log2 : ufunc [ Literal [ 1 ], Literal [ 1 ]]
752
+ log : ufunc [ Literal [ 1 ], Literal [ 1 ]]
753
+ logaddexp2 : ufunc [ Literal [ 2 ], Literal [ 1 ]]
754
+ logaddexp : ufunc [ Literal [ 2 ], Literal [ 1 ]]
755
+ logical_and : ufunc [ Literal [ 2 ], Literal [ 1 ]]
756
+ logical_not : ufunc [ Literal [ 1 ], Literal [ 1 ]]
757
+ logical_or : ufunc [ Literal [ 2 ], Literal [ 1 ]]
758
+ logical_xor : ufunc [ Literal [ 2 ], Literal [ 1 ]]
759
+ matmul : ufunc [ Literal [ 2 ], Literal [ 1 ]]
760
+ maximum : ufunc [ Literal [ 2 ], Literal [ 1 ]]
761
+ minimum : ufunc [ Literal [ 2 ], Literal [ 1 ]]
762
+ modf : ufunc [ Literal [ 1 ], Literal [ 2 ]]
763
+ multiply : ufunc [ Literal [ 2 ], Literal [ 1 ]]
764
+ negative : ufunc [ Literal [ 1 ], Literal [ 1 ]]
765
+ nextafter : ufunc [ Literal [ 2 ], Literal [ 1 ]]
766
+ not_equal : ufunc [ Literal [ 2 ], Literal [ 1 ]]
767
+ positive : ufunc [ Literal [ 1 ], Literal [ 1 ]]
768
+ power : ufunc [ Literal [ 2 ], Literal [ 1 ]]
769
+ rad2deg : ufunc [ Literal [ 1 ], Literal [ 1 ]]
770
+ radians : ufunc [ Literal [ 1 ], Literal [ 1 ]]
771
+ reciprocal : ufunc [ Literal [ 1 ], Literal [ 1 ]]
772
+ remainder : ufunc [ Literal [ 2 ], Literal [ 1 ]]
773
+ right_shift : ufunc [ Literal [ 2 ], Literal [ 1 ]]
774
+ rint : ufunc [ Literal [ 1 ], Literal [ 1 ]]
775
+ sign : ufunc [ Literal [ 1 ], Literal [ 1 ]]
776
+ signbit : ufunc [ Literal [ 1 ], Literal [ 1 ]]
772
777
sin : ufunc [Literal [1 ], Literal [1 ]]
773
- sinh : ufunc
774
- spacing : ufunc
775
- sqrt : ufunc
776
- square : ufunc
777
- subtract : ufunc
778
- tan : ufunc
779
- tanh : ufunc
780
- true_divide : ufunc
781
- trunc : ufunc
778
+ sinh : ufunc [ Literal [ 1 ], Literal [ 1 ]]
779
+ spacing : ufunc [ Literal [ 1 ], Literal [ 1 ]]
780
+ sqrt : ufunc [ Literal [ 1 ], Literal [ 1 ]]
781
+ square : ufunc [ Literal [ 1 ], Literal [ 1 ]]
782
+ subtract : ufunc [ Literal [ 2 ], Literal [ 1 ]]
783
+ tan : ufunc [ Literal [ 1 ], Literal [ 1 ]]
784
+ tanh : ufunc [ Literal [ 1 ], Literal [ 1 ]]
785
+ true_divide : ufunc [ Literal [ 2 ], Literal [ 1 ]]
786
+ trunc : ufunc [ Literal [ 1 ], Literal [ 1 ]]
782
787
783
788
# TODO(shoyer): remove when the full numpy namespace is defined
784
789
def __getattr__ (name : str ) -> Any : ...
0 commit comments