mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-05-25 01:38:40 +08:00
Allow reversed to take any object implementing __len__ and __getitem__ (#5820)
`reversed` is currently annotated as accepting either a `Sequence` or objects implementing the `__reversed__` protocol. This however is too strict as, per its [docs](https://docs.python.org/3/library/functions.html#reversed), it can take any object that implements `__len__` and `__getitem__`.
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
from typing import Sized, overload
|
||||
from typing_extensions import Literal, Protocol
|
||||
from _typeshed import SupportsLenAndGetItem
|
||||
from typing import overload
|
||||
from typing_extensions import Literal
|
||||
|
||||
class _Vector(Protocol, Sized):
|
||||
def __getitem__(self, i: int) -> float: ...
|
||||
_Vector = SupportsLenAndGetItem[float]
|
||||
|
||||
class AnnoyIndex:
|
||||
f: int
|
||||
|
||||
Reference in New Issue
Block a user