mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-24 21:01:52 +08:00
Fix intransitive subtyping issue with SupportsGetItem (#8785)
See https://github.com/python/mypy/issues/13713 for details
This commit is contained in:
@@ -7,7 +7,7 @@ import ctypes
|
||||
import mmap
|
||||
import pickle
|
||||
import sys
|
||||
from collections.abc import Awaitable, Callable, Container, Iterable, Set as AbstractSet
|
||||
from collections.abc import Awaitable, Callable, Iterable, Set as AbstractSet
|
||||
from os import PathLike
|
||||
from types import FrameType, TracebackType
|
||||
from typing import Any, AnyStr, Generic, Protocol, TypeVar, Union
|
||||
@@ -118,7 +118,8 @@ class SupportsKeysAndGetItem(Protocol[_KT, _VT_co]):
|
||||
def __getitem__(self, __key: _KT) -> _VT_co: ...
|
||||
|
||||
# stable
|
||||
class SupportsGetItem(Container[_KT_contra], Protocol[_KT_contra, _VT_co]):
|
||||
class SupportsGetItem(Protocol[_KT_contra, _VT_co]):
|
||||
def __contains__(self, __x: object) -> bool: ...
|
||||
def __getitem__(self, __key: _KT_contra) -> _VT_co: ...
|
||||
|
||||
# stable
|
||||
|
||||
@@ -447,6 +447,7 @@ class AsyncGenerator(AsyncIterator[_T_co], Generic[_T_co, _T_contra]):
|
||||
|
||||
@runtime_checkable
|
||||
class Container(Protocol[_T_co]):
|
||||
# This is generic more on vibes than anything else
|
||||
@abstractmethod
|
||||
def __contains__(self, __x: object) -> bool: ...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user