mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-05-04 04:25:50 +08:00
[_operator] Type mod (#15577)
Add `Supports(R)Mod` protocols to `_typeshed` module.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import sys
|
||||
from _typeshed import SupportsGetItem, SupportsMul, SupportsRMul
|
||||
from _typeshed import SupportsGetItem, SupportsMod, SupportsMul, SupportsRMod, SupportsRMul
|
||||
from collections.abc import Callable, Container, Iterable, MutableMapping, MutableSequence, Sequence
|
||||
from operator import attrgetter as attrgetter, itemgetter as itemgetter, methodcaller as methodcaller
|
||||
from typing import Any, AnyStr, Protocol, SupportsAbs, SupportsIndex, TypeVar, overload, type_check_only
|
||||
@@ -66,7 +66,10 @@ def index(a: SupportsIndex, /) -> int: ...
|
||||
def inv(a: _SupportsInversion[_T_co], /) -> _T_co: ...
|
||||
def invert(a: _SupportsInversion[_T_co], /) -> _T_co: ...
|
||||
def lshift(a, b, /): ...
|
||||
def mod(a, b, /): ...
|
||||
@overload
|
||||
def mod(a: SupportsMod[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
|
||||
@overload
|
||||
def mod(a: _T_contra, b: SupportsRMod[_T_contra, _T_co], /) -> _T_co: ...
|
||||
@overload
|
||||
def mul(a: SupportsMul[_T_contra, _T_co], b: _T_contra, /) -> _T_co: ...
|
||||
@overload
|
||||
|
||||
@@ -126,6 +126,12 @@ class SupportsMul(Protocol[_T_contra, _T_co]):
|
||||
class SupportsRMul(Protocol[_T_contra, _T_co]):
|
||||
def __rmul__(self, x: _T_contra, /) -> _T_co: ...
|
||||
|
||||
class SupportsMod(Protocol[_T_contra, _T_co]):
|
||||
def __mod__(self, other: _T_contra, /) -> _T_co: ...
|
||||
|
||||
class SupportsRMod(Protocol[_T_contra, _T_co]):
|
||||
def __rmod__(self, other: _T_contra, /) -> _T_co: ...
|
||||
|
||||
class SupportsDivMod(Protocol[_T_contra, _T_co]):
|
||||
def __divmod__(self, other: _T_contra, /) -> _T_co: ...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user