Skip to content

Commit 80548ee

Browse files
authored
Add overloads
1 parent 1473215 commit 80548ee

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

stdlib/_operator.pyi

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,20 +262,85 @@ def setitem(a: MutableSequence[_T], b: slice[int | None], c: Sequence[_T], /) ->
262262
@overload
263263
def setitem(a: MutableMapping[_K, _V], b: _K, c: _V, /) -> None: ...
264264
def length_hint(obj: object, default: int = 0, /) -> int: ...
265+
@overload
265266
def iadd(a: _SupportsIAdd[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
267+
@overload
268+
def iadd(a: _SupportsAdd[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
269+
@overload
270+
def iadd(a: _T_contra, b: _SupportsRAdd[_T_contra, _T_co], /) -> _T_co: ...
271+
@overload
266272
def iand(a: _SupportsIAnd[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
273+
@overload
274+
def iand(a: _SupportsAnd[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
275+
@overload
276+
def iand(a: _T_contra, b: _SupportsRAnd[_T_contra, _T_co], /) -> _T_co: ...
267277
def iconcat(a: MutableSequence[_T], b: Sequence[_T], /) -> MutableSequence[_T]: ... # currently impossible to type more precisely
278+
@overload
268279
def ifloordiv(a: _SupportsIFloorDiv[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
280+
@overload
281+
def ifloordiv(a: _SupportsFloorDiv[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
282+
@overload
283+
def ifloordiv(a: _T_contra, b: _SupportsRFloorDiv[_T_contra, _T_co], /) -> _T_co: ...
284+
@overload
269285
def ilshift(a: _SupportsILShift[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
286+
@overload
287+
def ilshift(a: _SupportsLShift[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
288+
@overload
289+
def ilshift(a: _T_contra, b: _SupportsRLShift[_T_contra, _T_co], /) -> _T_co: ...
290+
@overload
270291
def imod(a: _SupportsIMod[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
292+
@overload
293+
def imod(a: _SupportsMod[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
294+
@overload
295+
def imod(a: _T_contra, b: _SupportsRMod[_T_contra, _T_co], /) -> _T_co: ...
296+
@overload
271297
def imul(a: _SupportsIMul[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
298+
@overload
299+
def imul(a: _SupportsMul[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
300+
@overload
301+
def imul(a: _T_contra, b: _SupportsRMul[_T_contra, _T_co], /) -> _T_co: ...
302+
@overload
272303
def imatmul(a: _SupportsIMatMul[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
304+
@overload
305+
def imatmul(a: _SupportsMatMul[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
306+
@overload
307+
def imatmul(a: _T_contra, b: _SupportsRMatMul[_T_contra, _T_co], /) -> _T_co: ...
308+
@overload
273309
def ior(a: _SupportsIOr[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
310+
@overload
311+
def ior(a: _SupportsOr[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
312+
@overload
313+
def ior(a: _T_contra, b: _SupportsROr[_T_contra, _T_co], /) -> _T_co: ...
314+
@overload
274315
def ipow(a: _SupportsIPow[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
316+
@overload
317+
def ipow(a: _SupportsPow[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
318+
@overload
319+
def ipow(a: _T_contra, b: _SupportsRPow[_T_contra, _T_co], /) -> _T_co: ...
320+
@overload
275321
def irshift(a: _SupportsIRShift[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
322+
@overload
323+
def irshift(a: _SupportsRShift[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
324+
@overload
325+
def irshift(a: _T_contra, b: _SupportsRRShift[_T_contra, _T_co], /) -> _T_co: ...
326+
@overload
276327
def isub(a: _SupportsISub[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
328+
@overload
329+
def isub(a: _SupportsSub[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
330+
@overload
331+
def isub(a: _T_contra, b: _SupportsRSub[_T_contra, _T_co], /) -> _T_co: ...
332+
@overload
277333
def itruediv(a: _SupportsITrueDiv[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
334+
@overload
335+
def itruediv(a: _SupportsTrueDiv[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
336+
@overload
337+
def itruediv(a: _T_contra, b: _SupportsRTrueDiv[_T_contra, _T_co], /) -> _T_co: ...
338+
@overload
278339
def ixor(a: _SupportsIXOr[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
340+
@overload
341+
def ixor(a: _SupportsXOr[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
342+
@overload
343+
def ixor(a: _T_contra, b: _SupportsRXOr[_T_contra, _T_co], /) -> _T_co: ...
279344

280345
if sys.version_info >= (3, 11):
281346
def call(obj: Callable[_P, _R], /, *args: _P.args, **kwargs: _P.kwargs) -> _R: ...

0 commit comments

Comments
 (0)