Improve stubs for sequence types (#6386)

This commit is contained in:
Alex Waygood
2021-11-27 03:09:38 +00:00
committed by GitHub
parent 6130c2459e
commit 98af7d667f
9 changed files with 32 additions and 29 deletions

View File

@@ -11,7 +11,7 @@ from typing import (
TypeVar,
overload,
)
from typing_extensions import final
from typing_extensions import SupportsIndex, final
_T = TypeVar("_T")
_T_co = TypeVar("_T_co", covariant=True)
@@ -79,38 +79,38 @@ def contains(__a: Container[Any], __b: Any) -> bool: ...
def __contains__(a: Container[Any], b: Any) -> bool: ...
def countOf(__a: Container[Any], __b: Any) -> int: ...
@overload
def delitem(__a: MutableSequence[Any], __b: int) -> None: ...
def delitem(__a: MutableSequence[Any], __b: SupportsIndex) -> None: ...
@overload
def delitem(__a: MutableSequence[Any], __b: slice) -> None: ...
@overload
def delitem(__a: MutableMapping[_K, Any], __b: _K) -> None: ...
@overload
def __delitem__(a: MutableSequence[Any], b: int) -> None: ...
def __delitem__(a: MutableSequence[Any], b: SupportsIndex) -> None: ...
@overload
def __delitem__(a: MutableSequence[Any], b: slice) -> None: ...
@overload
def __delitem__(a: MutableMapping[_K, Any], b: _K) -> None: ...
@overload
def getitem(__a: Sequence[_T], __b: int) -> _T: ...
def getitem(__a: Sequence[_T], __b: SupportsIndex) -> _T: ...
@overload
def getitem(__a: Sequence[_T], __b: slice) -> Sequence[_T]: ...
@overload
def getitem(__a: Mapping[_K, _V], __b: _K) -> _V: ...
@overload
def __getitem__(a: Sequence[_T], b: int) -> _T: ...
def __getitem__(a: Sequence[_T], b: SupportsIndex) -> _T: ...
@overload
def __getitem__(a: Sequence[_T], b: slice) -> Sequence[_T]: ...
@overload
def __getitem__(a: Mapping[_K, _V], b: _K) -> _V: ...
def indexOf(__a: Sequence[_T], __b: _T) -> int: ...
@overload
def setitem(__a: MutableSequence[_T], __b: int, __c: _T) -> None: ...
def setitem(__a: MutableSequence[_T], __b: SupportsIndex, __c: _T) -> None: ...
@overload
def setitem(__a: MutableSequence[_T], __b: slice, __c: Sequence[_T]) -> None: ...
@overload
def setitem(__a: MutableMapping[_K, _V], __b: _K, __c: _V) -> None: ...
@overload
def __setitem__(a: MutableSequence[_T], b: int, c: _T) -> None: ...
def __setitem__(a: MutableSequence[_T], b: SupportsIndex, c: _T) -> None: ...
@overload
def __setitem__(a: MutableSequence[_T], b: slice, c: Sequence[_T]) -> None: ...
@overload