@@ -9,6 +9,7 @@ from _typeshed import (
99 ConvertibleToFloat ,
1010 ConvertibleToInt ,
1111 FileDescriptorOrPath ,
12+ IndexSlice ,
1213 MaybeNone ,
1314 OpenBinaryMode ,
1415 OpenBinaryModeReading ,
@@ -594,9 +595,9 @@ class str(Sequence[str]):
594595 def __eq__ (self , value : object , / ) -> bool : ...
595596 def __ge__ (self , value : str , / ) -> bool : ...
596597 @overload
597- def __getitem__ (self : LiteralString , key : SupportsIndex | slice , / ) -> LiteralString : ...
598+ def __getitem__ (self : LiteralString , key : SupportsIndex | IndexSlice , / ) -> LiteralString : ...
598599 @overload
599- def __getitem__ (self , key : SupportsIndex | slice , / ) -> str : ... # type: ignore[misc]
600+ def __getitem__ (self , key : SupportsIndex | IndexSlice , / ) -> str : ... # type: ignore[misc]
600601 def __gt__ (self , value : str , / ) -> bool : ...
601602 def __hash__ (self ) -> int : ...
602603 @overload
@@ -702,7 +703,7 @@ class bytes(Sequence[int]):
702703 @overload
703704 def __getitem__ (self , key : SupportsIndex , / ) -> int : ...
704705 @overload
705- def __getitem__ (self , key : slice , / ) -> bytes : ...
706+ def __getitem__ (self , key : IndexSlice , / ) -> bytes : ...
706707 def __add__ (self , value : ReadableBuffer , / ) -> bytes : ...
707708 def __mul__ (self , value : SupportsIndex , / ) -> bytes : ...
708709 def __rmul__ (self , value : SupportsIndex , / ) -> bytes : ...
@@ -808,12 +809,12 @@ class bytearray(MutableSequence[int]):
808809 @overload
809810 def __getitem__ (self , key : SupportsIndex , / ) -> int : ...
810811 @overload
811- def __getitem__ (self , key : slice , / ) -> bytearray : ...
812+ def __getitem__ (self , key : IndexSlice , / ) -> bytearray : ...
812813 @overload
813814 def __setitem__ (self , key : SupportsIndex , value : SupportsIndex , / ) -> None : ...
814815 @overload
815- def __setitem__ (self , key : slice , value : Iterable [SupportsIndex ] | bytes , / ) -> None : ...
816- def __delitem__ (self , key : SupportsIndex | slice , / ) -> None : ...
816+ def __setitem__ (self , key : IndexSlice , value : Iterable [SupportsIndex ] | bytes , / ) -> None : ...
817+ def __delitem__ (self , key : SupportsIndex | IndexSlice , / ) -> None : ...
817818 def __add__ (self , value : ReadableBuffer , / ) -> bytearray : ...
818819 # The superclass wants us to accept Iterable[int], but that fails at runtime.
819820 def __iadd__ (self , value : ReadableBuffer , / ) -> Self : ... # type: ignore[override]
@@ -879,14 +880,14 @@ class memoryview(Sequence[_I]):
879880 @overload
880881 def __getitem__ (self , key : SupportsIndex | tuple [SupportsIndex , ...], / ) -> _I : ...
881882 @overload
882- def __getitem__ (self , key : slice , / ) -> memoryview [_I ]: ...
883+ def __getitem__ (self , key : IndexSlice , / ) -> memoryview [_I ]: ...
883884 def __contains__ (self , x : object , / ) -> bool : ...
884885 def __iter__ (self ) -> Iterator [_I ]: ...
885886 def __len__ (self ) -> int : ...
886887 def __eq__ (self , value : object , / ) -> bool : ...
887888 def __hash__ (self ) -> int : ...
888889 @overload
889- def __setitem__ (self , key : slice , value : ReadableBuffer , / ) -> None : ...
890+ def __setitem__ (self , key : IndexSlice , value : ReadableBuffer , / ) -> None : ...
890891 @overload
891892 def __setitem__ (self , key : SupportsIndex | tuple [SupportsIndex , ...], value : _I , / ) -> None : ...
892893 if sys .version_info >= (3 , 10 ):
@@ -974,7 +975,7 @@ class tuple(Sequence[_T_co]):
974975 @overload
975976 def __getitem__ (self , key : SupportsIndex , / ) -> _T_co : ...
976977 @overload
977- def __getitem__ (self , key : slice , / ) -> tuple [_T_co , ...]: ...
978+ def __getitem__ (self , key : IndexSlice , / ) -> tuple [_T_co , ...]: ...
978979 def __iter__ (self ) -> Iterator [_T_co ]: ...
979980 def __lt__ (self , value : tuple [_T_co , ...], / ) -> bool : ...
980981 def __le__ (self , value : tuple [_T_co , ...], / ) -> bool : ...
@@ -1051,12 +1052,12 @@ class list(MutableSequence[_T]):
10511052 @overload
10521053 def __getitem__ (self , i : SupportsIndex , / ) -> _T : ...
10531054 @overload
1054- def __getitem__ (self , s : slice , / ) -> list [_T ]: ...
1055+ def __getitem__ (self , s : IndexSlice , / ) -> list [_T ]: ...
10551056 @overload
10561057 def __setitem__ (self , key : SupportsIndex , value : _T , / ) -> None : ...
10571058 @overload
1058- def __setitem__ (self , key : slice , value : Iterable [_T ], / ) -> None : ...
1059- def __delitem__ (self , key : SupportsIndex | slice , / ) -> None : ...
1059+ def __setitem__ (self , key : IndexSlice , value : Iterable [_T ], / ) -> None : ...
1060+ def __delitem__ (self , key : SupportsIndex | IndexSlice , / ) -> None : ...
10601061 # Overloading looks unnecessary, but is needed to work around complex mypy problems
10611062 @overload
10621063 def __add__ (self , value : list [_T ], / ) -> list [_T ]: ...
@@ -1257,7 +1258,7 @@ class range(Sequence[int]):
12571258 @overload
12581259 def __getitem__ (self , key : SupportsIndex , / ) -> int : ...
12591260 @overload
1260- def __getitem__ (self , key : slice , / ) -> range : ...
1261+ def __getitem__ (self , key : IndexSlice , / ) -> range : ...
12611262 def __reversed__ (self ) -> Iterator [int ]: ...
12621263
12631264class property :
0 commit comments