11# Stubs for math
22# See: http://docs.python.org/2/library/math.html
33
4- from typing import Tuple , Iterable , Optional
4+ from typing import Tuple , Iterable , Optional , SupportsFloat , SupportsInt
55
66import sys
77
@@ -13,57 +13,57 @@ if sys.version_info >= (3, 5):
1313if sys .version_info >= (3 , 6 ):
1414 tau = ... # type: float
1515
16- def acos (x : float ) -> float : ...
17- def acosh (x : float ) -> float : ...
18- def asin (x : float ) -> float : ...
19- def asinh (x : float ) -> float : ...
20- def atan (x : float ) -> float : ...
21- def atan2 (y : float , x : float ) -> float : ...
22- def atanh (x : float ) -> float : ...
16+ def acos (x : SupportsFloat ) -> float : ...
17+ def acosh (x : SupportsFloat ) -> float : ...
18+ def asin (x : SupportsFloat ) -> float : ...
19+ def asinh (x : SupportsFloat ) -> float : ...
20+ def atan (x : SupportsFloat ) -> float : ...
21+ def atan2 (y : SupportsFloat , x : SupportsFloat ) -> float : ...
22+ def atanh (x : SupportsFloat ) -> float : ...
2323if sys .version_info >= (3 ,):
24- def ceil (x : float ) -> int : ...
24+ def ceil (x : SupportsFloat ) -> int : ...
2525else :
26- def ceil (x : float ) -> float : ...
27- def copysign (x : float , y : float ) -> float : ...
28- def cos (x : float ) -> float : ...
29- def cosh (x : float ) -> float : ...
30- def degrees (x : float ) -> float : ...
31- def erf (x : float ) -> float : ...
32- def erfc (x : float ) -> float : ...
33- def exp (x : float ) -> float : ...
34- def expm1 (x : float ) -> float : ...
35- def fabs (x : float ) -> float : ...
36- def factorial (x : int ) -> int : ...
26+ def ceil (x : SupportsFloat ) -> float : ...
27+ def copysign (x : SupportsFloat , y : SupportsFloat ) -> float : ...
28+ def cos (x : SupportsFloat ) -> float : ...
29+ def cosh (x : SupportsFloat ) -> float : ...
30+ def degrees (x : SupportsFloat ) -> float : ...
31+ def erf (x : SupportsFloat ) -> float : ...
32+ def erfc (x : SupportsFloat ) -> float : ...
33+ def exp (x : SupportsFloat ) -> float : ...
34+ def expm1 (x : SupportsFloat ) -> float : ...
35+ def fabs (x : SupportsFloat ) -> float : ...
36+ def factorial (x : SupportsInt ) -> int : ...
3737if sys .version_info >= (3 ,):
38- def floor (x : float ) -> int : ...
38+ def floor (x : SupportsFloat ) -> int : ...
3939else :
40- def floor (x : float ) -> float : ...
41- def fmod (x : float , y : float ) -> float : ...
42- def frexp (x : float ) -> Tuple [float , int ]: ...
40+ def floor (x : SupportsFloat ) -> float : ...
41+ def fmod (x : SupportsFloat , y : SupportsFloat ) -> float : ...
42+ def frexp (x : SupportsFloat ) -> Tuple [float , int ]: ...
4343def fsum (iterable : Iterable ) -> float : ...
44- def gamma (x : float ) -> float : ...
44+ def gamma (x : SupportsFloat ) -> float : ...
4545if sys .version_info >= (3 , 5 ):
4646 def gcd (a : int , b : int ) -> int : ...
47- def hypot (x : float , y : float ) -> float : ...
47+ def hypot (x : SupportsFloat , y : SupportsFloat ) -> float : ...
4848if sys .version_info >= (3 , 5 ):
49- def isclose (a : float , b : float , rel_tol : float = ..., abs_tol : float = ...) -> bool : ...
50- def isinf (x : float ) -> bool : ...
49+ def isclose (a : SupportsFloat , b : SupportsFloat , rel_tol : SupportsFloat = ..., abs_tol : SupportsFloat = ...) -> bool : ...
50+ def isinf (x : SupportsFloat ) -> bool : ...
5151if sys .version_info >= (3 ,):
52- def isfinite (x : float ) -> bool : ...
53- def isnan (x : float ) -> bool : ...
54- def ldexp (x : float , i : int ) -> float : ...
55- def lgamma (x : float ) -> float : ...
56- def log (x : float , base : float = ...) -> float : ...
57- def log10 (x : float ) -> float : ...
58- def log1p (x : float ) -> float : ...
52+ def isfinite (x : SupportsFloat ) -> bool : ...
53+ def isnan (x : SupportsFloat ) -> bool : ...
54+ def ldexp (x : SupportsFloat , i : int ) -> float : ...
55+ def lgamma (x : SupportsFloat ) -> float : ...
56+ def log (x : SupportsFloat , base : SupportsFloat = ...) -> float : ...
57+ def log10 (x : SupportsFloat ) -> float : ...
58+ def log1p (x : SupportsFloat ) -> float : ...
5959if sys .version_info >= (3 , 3 ):
60- def log2 (x : float ) -> float : ...
61- def modf (x : float ) -> Tuple [float , float ]: ...
62- def pow (x : float , y : float ) -> float : ...
63- def radians (x : float ) -> float : ...
64- def sin (x : float ) -> float : ...
65- def sinh (x : float ) -> float : ...
66- def sqrt (x : float ) -> float : ...
67- def tan (x : float ) -> float : ...
68- def tanh (x : float ) -> float : ...
69- def trunc (x : float ) -> int : ...
60+ def log2 (x : SupportsFloat ) -> float : ...
61+ def modf (x : SupportsFloat ) -> Tuple [float , float ]: ...
62+ def pow (x : SupportsFloat , y : SupportsFloat ) -> float : ...
63+ def radians (x : SupportsFloat ) -> float : ...
64+ def sin (x : SupportsFloat ) -> float : ...
65+ def sinh (x : SupportsFloat ) -> float : ...
66+ def sqrt (x : SupportsFloat ) -> float : ...
67+ def tan (x : SupportsFloat ) -> float : ...
68+ def tanh (x : SupportsFloat ) -> float : ...
69+ def trunc (x : SupportsFloat ) -> int : ...
0 commit comments