Loosen Mapping.update() overloads a little (#14593)

This commit is contained in:
Alex Waygood
2025-08-19 19:54:03 +01:00
committed by GitHub
parent ab0968b416
commit 8a56044cd6
4 changed files with 21 additions and 8 deletions
+3 -3
View File
@@ -1,4 +1,4 @@
from _typeshed import SupportsKeysAndGetItem
from _typeshed import SupportsGetItem, SupportsKeysAndGetItem
from _typeshed.wsgi import WSGIEnvironment
from collections.abc import Collection, Iterable, Iterator, MutableMapping
from typing import Literal, Protocol, TypeVar, overload, type_check_only
@@ -73,11 +73,11 @@ class MultiDict(MutableMapping[_KT, _VT]):
def pop(self, key: _KT, default: _T) -> _VT | _T: ...
def popitem(self) -> tuple[_KT, _VT]: ...
@overload # type: ignore[override]
def update(self: MultiDict[str, _VT], **kwargs: _VT) -> None: ...
def update(self: SupportsGetItem[str, _VT], **kwargs: _VT) -> None: ...
@overload
def update(self, m: Collection[tuple[_KT, _VT]], /) -> None: ...
@overload
def update(self: MultiDict[str, _VT], m: Collection[tuple[str, _VT]], /, **kwargs: _VT) -> None: ...
def update(self: SupportsGetItem[str, _VT], m: Collection[tuple[str, _VT]], /, **kwargs: _VT) -> None: ...
@overload
def extend(self, other: _SupportsItemsWithIterableResult[_KT, _VT]) -> None: ...
@overload