Skip to content

Commit cd3e7b2

Browse files
allow arbirary types in set.discard
1 parent 236a8c0 commit cd3e7b2

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

stdlib/@tests/test_cases/builtins/check_set.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,7 @@ def test_set_difference(x: set[Literal["foo", "bar"]], y: set[str], z: set[int])
1212
assert_type(z - x, set[int])
1313
assert_type(y - z, set[str])
1414
assert_type(z - y, set[int])
15+
16+
17+
def test_set_discard(x: set[Literal["foo", "bar"]], key: str) -> None:
18+
x.discard(key) # OK

stdlib/builtins.pyi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1264,7 +1264,7 @@ class set(MutableSet[_T]):
12641264
def copy(self) -> set[_T]: ...
12651265
def difference(self, *s: Iterable[Any]) -> set[_T]: ...
12661266
def difference_update(self, *s: Iterable[Any]) -> None: ...
1267-
def discard(self, element: _T, /) -> None: ...
1267+
def discard(self, element: object, /) -> None: ...
12681268
def intersection(self, *s: Iterable[Any]) -> set[_T]: ...
12691269
def intersection_update(self, *s: Iterable[Any]) -> None: ...
12701270
def isdisjoint(self, s: Iterable[Any], /) -> bool: ...

stdlib/typing.pyi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -716,7 +716,7 @@ class MutableSet(AbstractSet[_T]):
716716
@abstractmethod
717717
def add(self, value: _T) -> None: ...
718718
@abstractmethod
719-
def discard(self, value: _T) -> None: ...
719+
def discard(self, value: Any) -> None: ...
720720
# Mixin methods
721721
def clear(self) -> None: ...
722722
def pop(self) -> _T: ...

0 commit comments

Comments
 (0)