|
1 | 1 | fromcollections.abcimportCallable,Iterable
|
2 |
| -fromtypingimportProtocol,Any,TypeVar,overload |
| 2 | +fromtypingimportProtocol,Any,TypeVar,overload,Union |
3 | 3 |
|
4 | 4 | MISSING=object()
|
5 | 5 | EMPTY_MSG='max() arg is an empty sequence'
|
6 | 6 |
|
7 |
| -class_SupportsLessThan(Protocol): |
| 7 | +classSupportsLessThan(Protocol): |
8 | 8 | def__lt__(self,other:Any)->bool: ...
|
9 | 9 |
|
10 |
| -_T=TypeVar('_T') |
11 |
| -_LT=TypeVar('_LT',bound=_SupportsLessThan) |
12 |
| -_DT=TypeVar('_DT') |
| 10 | +T=TypeVar('T') |
| 11 | +LT=TypeVar('LT',bound=SupportsLessThan) |
| 12 | +DT=TypeVar('DT') |
13 | 13 |
|
14 | 14 | @overload
|
15 |
| -defmax(__arg1:_LT,__arg2:_LT,*_args:_LT,key:None= ...)->_LT: |
| 15 | +defmax(arg1:LT,arg2:LT,*_args:LT,key:None= ...)->LT: |
16 | 16 | ...
|
17 | 17 | @overload
|
18 |
| -defmax(__arg1:_T,__arg2:_T,*_args:_T,key:Callable[[_T],_LT])->_T: |
| 18 | +defmax(arg1:T,arg2:T,*_args:T,key:Callable[[T],LT])->T: |
19 | 19 | ...
|
20 | 20 | @overload
|
21 |
| -defmax(__iterable:Iterable[_LT],*,key:None= ...)->_LT: |
| 21 | +defmax(iterable:Iterable[LT],*,key:None= ...)->LT: |
22 | 22 | ...
|
23 | 23 | @overload
|
24 |
| -defmax(__iterable:Iterable[_T],*,key:Callable[[_T],_LT])->_T: |
| 24 | +defmax(iterable:Iterable[T],*,key:Callable[[T],LT])->T: |
25 | 25 | ...
|
26 | 26 | @overload
|
27 |
| -defmax(__iterable:Iterable[_LT],*,key:None= ...,default:_DT)->_LT|_DT: |
| 27 | +defmax(iterable:Iterable[LT],*,key:None= ...,default:DT)->Union[LT,DT]: |
28 | 28 | ...
|
29 | 29 | @overload
|
30 |
| -defmax(__iterable:Iterable[_T],*,key:Callable[[_T],_LT],default:_DT)->_T,_DT: |
| 30 | +defmax(iterable:Iterable[T],*,key:Callable[[T],LT],default:DT)->Union[T,DT]: |
31 | 31 | ...
|
32 | 32 | defmax(first,*args,key=None,default=MISSING):
|
33 | 33 | ifargs:
|
@@ -55,22 +55,22 @@ def max(first, *args, key=None, default=MISSING):
|
55 | 55 | returncandidate
|
56 | 56 |
|
57 | 57 | @overload
|
58 |
| -defmin(__arg1:_LT,__arg2:_LT,*_args:_LT,key:None= ...)->_LT: |
| 58 | +defmin(arg1:LT,arg2:LT,*_args:LT,key:None= ...)->LT: |
59 | 59 | ...
|
60 | 60 | @overload
|
61 |
| -defmin(__arg1:_T,__arg2:_T,*_args:_T,key:Callable[[_T],_LT])->_T: |
| 61 | +defmin(arg1:T,arg2:T,*_args:T,key:Callable[[T],LT])->T: |
62 | 62 | ...
|
63 | 63 | @overload
|
64 |
| -defmin(__iterable:Iterable[_LT],*,key:None= ...)->_LT: |
| 64 | +defmin(iterable:Iterable[LT],*,key:None= ...)->LT: |
65 | 65 | ...
|
66 | 66 | @overload
|
67 |
| -defmin(__iterable:Iterable[_T],*,key:Callable[[_T],_LT])->_T: |
| 67 | +defmin(iterable:Iterable[T],*,key:Callable[[T],LT])->T: |
68 | 68 | ...
|
69 | 69 | @overload
|
70 |
| -defmin(__iterable:Iterable[_LT],*,key:None= ...,default:_DT)->Union[_LT,_DT]: |
| 70 | +defmin(iterable:Iterable[LT],*,key:None= ...,default:DT)->Union[LT,DT]: |
71 | 71 | ...
|
72 | 72 | @overload
|
73 |
| -defmin(__iterable:Iterable[_T],*,key:Callable[[_T],_LT],default:_DT)->Union[_T,_DT]: |
| 73 | +defmin(iterable:Iterable[T],*,key:Callable[[T],LT],default:DT)->Union[T,DT]: |
74 | 74 | ...
|
75 | 75 | defmin(first,*args,key=None,default=MISSING):
|
76 | 76 | ifargs:
|
|