@@ -4,10 +4,6 @@ from typing import Any, Callable, Generic, Dict, Iterable, Mapping, Optional, Se
4
4
_AnyCallable = Callable [..., Any ]
5
5
6
6
_T = TypeVar ("_T" )
7
- _T2 = TypeVar ("_T2" )
8
- _T3 = TypeVar ("_T3" )
9
- _T4 = TypeVar ("_T4" )
10
- _T5 = TypeVar ("_T5" )
11
7
_S = TypeVar ("_S" )
12
8
@overload
13
9
def reduce (function : Callable [[_T , _S ], _T ],
@@ -44,75 +40,12 @@ def wraps(wrapped: _AnyCallable, assigned: Sequence[str] = ..., updated: Sequenc
44
40
def total_ordering (cls : type ) -> type : ...
45
41
def cmp_to_key (mycmp : Callable [[_T , _T ], int ]) -> Callable [[_T ], Any ]: ...
46
42
47
- @overload
48
- def partial (__func : Callable [[_T ], _S ], __arg : _T ) -> Callable [[], _S ]: ...
49
- @overload
50
- def partial (__func : Callable [[_T , _T2 ], _S ], __arg : _T ) -> Callable [[_T2 ], _S ]: ...
51
- @overload
52
- def partial (__func : Callable [[_T , _T2 , _T3 ], _S ], __arg : _T ) -> Callable [[_T2 , _T3 ], _S ]: ...
53
- @overload
54
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 ], _S ], __arg : _T ) -> Callable [[_T2 , _T3 , _T4 ], _S ]: ...
55
- @overload
56
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 , _T5 ], _S ], __arg : _T ) -> Callable [[_T2 , _T3 , _T4 , _T5 ], _S ]: ...
57
-
58
- @overload
59
- def partial (__func : Callable [[_T , _T2 ], _S ],
60
- __arg1 : _T ,
61
- __arg2 : _T2 ) -> Callable [[], _S ]: ...
62
- @overload
63
- def partial (__func : Callable [[_T , _T2 , _T3 ], _S ],
64
- __arg1 : _T ,
65
- __arg2 : _T2 ) -> Callable [[_T3 ], _S ]: ...
66
- @overload
67
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 ], _S ],
68
- __arg1 : _T ,
69
- __arg2 : _T2 ) -> Callable [[_T3 , _T4 ], _S ]: ...
70
- @overload
71
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 , _T5 ], _S ],
72
- __arg1 : _T ,
73
- __arg2 : _T2 ) -> Callable [[_T3 , _T4 , _T5 ], _S ]: ...
74
-
75
- @overload
76
- def partial (__func : Callable [[_T , _T2 , _T3 ], _S ],
77
- __arg1 : _T ,
78
- __arg2 : _T2 ,
79
- __arg3 : _T3 ) -> Callable [[], _S ]: ...
80
- @overload
81
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 ], _S ],
82
- __arg1 : _T ,
83
- __arg2 : _T2 ,
84
- __arg3 : _T3 ) -> Callable [[_T4 ], _S ]: ...
85
- @overload
86
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 , _T5 ], _S ],
87
- __arg1 : _T ,
88
- __arg2 : _T2 ,
89
- __arg3 : _T3 ) -> Callable [[_T4 , _T5 ], _S ]: ...
90
-
91
- @overload
92
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 ], _S ],
93
- __arg1 : _T ,
94
- __arg2 : _T2 ,
95
- __arg3 : _T3 ,
96
- __arg4 : _T4 ) -> Callable [[], _S ]: ...
97
- @overload
98
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 , _T5 ], _S ],
99
- __arg1 : _T ,
100
- __arg2 : _T2 ,
101
- __arg3 : _T3 ,
102
- __arg4 : _T4 ) -> Callable [[_T5 ], _S ]: ...
103
-
104
- @overload
105
- def partial (__func : Callable [[_T , _T2 , _T3 , _T4 , _T5 ], _S ],
106
- __arg1 : _T ,
107
- __arg2 : _T2 ,
108
- __arg3 : _T3 ,
109
- __arg4 : _T4 ,
110
- __arg5 : _T5 ) -> Callable [[], _S ]: ...
111
-
112
- @overload
113
- def partial (__func : Callable [..., _S ],
114
- * args : Any ,
115
- ** kwargs : Any ) -> Callable [..., _S ]: ...
43
+ class partial (Generic [_T ]):
44
+ func : Callable [..., _T ]
45
+ args : Tuple [Any , ...]
46
+ keywords : Dict [str , Any ]
47
+ def __init__ (self , func : Callable [..., _T ], * args : Any , ** kwargs : Any ) -> None : ...
48
+ def __call__ (self , * args : Any , ** kwargs : Any ) -> _T : ...
116
49
117
50
# With protocols, this could change into a generic protocol that defines __get__ and returns _T
118
51
_Descriptor = Any
0 commit comments