diff --git a/stdlib/2/__builtin__.pyi b/stdlib/2/__builtin__.pyi index c30500439580..06793fabd0b4 100644 --- a/stdlib/2/__builtin__.pyi +++ b/stdlib/2/__builtin__.pyi @@ -4,7 +4,7 @@ # Python 3, and stub files conform to Python 3 syntax. from typing import ( - TypeVar, Iterator, Iterable, overload, + TypeVar, Iterator, Iterable, overload, Type, Sequence, Mapping, Tuple, List, Any, Dict, Callable, Generic, Set, AbstractSet, Sized, Reversible, SupportsInt, SupportsFloat, SupportsAbs, SupportsRound, IO, BinaryIO, Union, AnyStr, MutableSequence, MutableMapping, @@ -60,7 +60,7 @@ class type: # Note: the documentation doesnt specify what the return type is, the standard # implementation seems to be returning a list. def mro(self) -> List[type]: ... - def __subclasses__(self) -> List[type]: ... + def __subclasses__(self: Type[_T]) -> List[Type[_T]]: ... class int(SupportsInt, SupportsFloat, SupportsAbs[int]): @overload diff --git a/stdlib/3/builtins.pyi b/stdlib/3/builtins.pyi index e36a3b5c3a54..42b6e24bed18 100644 --- a/stdlib/3/builtins.pyi +++ b/stdlib/3/builtins.pyi @@ -1,7 +1,7 @@ # Stubs for builtins (Python 3) from typing import ( - TypeVar, Iterator, Iterable, overload, + TypeVar, Iterator, Iterable, overload, Type, Sequence, MutableSequence, Mapping, MutableMapping, Tuple, List, Any, Dict, Callable, Generic, Set, AbstractSet, MutableSet, Sized, Reversible, SupportsInt, SupportsFloat, SupportsBytes, SupportsAbs, SupportsRound, IO, Union, ItemsView, KeysView, ValuesView, ByteString, Optional @@ -57,7 +57,7 @@ class type: @overload def __new__(cls, name: str, bases: Tuple[type, ...], namespace: Dict[str, Any]) -> type: ... def __call__(self, *args: Any, **kwds: Any) -> Any: ... - def __subclasses__(self) -> List[type]: ... + def __subclasses__(self: Type[_T]) -> List[Type[_T]]: ... # Note: the documentation doesnt specify what the return type is, the standard # implementation seems to be returning a list. def mro(self) -> List[type]: ...