Message314495
> my original motivating case was objects that are hashable but not weakly referenceable.
It is probably not good design to extend discard() to handle types that aren't handled by the other methods. To me, it isn't at all surprising that the business of a WeakSet is to handle objects that are both hashable and weak referenceable. Muddying those waters may do more harm than good. My recommendation is to decline the feature request.
One other thought. As the Python world starts to encourage type annotations and static type checking, one benefit we would hope for is code with cleaner matches between the caller and callee signatures. Accordingly, we shouldn't encourage people to write code with odd signatures:
x : thing_that_cant_possibly_be_in_the_weakset
some_weakset.discard(x) # Someday, we might hope this would be flagged |
|
Date |
User |
Action |
Args |
2018-03-27 03:24:05 | rhettinger | set | recipients:
+ rhettinger, fdrake, pitrou, stutzbach, serhiy.storchaka, donkopotamus |
2018-03-27 03:24:05 | rhettinger | set | messageid: <1522121045.77.0.467229070634.issue30100@psf.upfronthosting.co.za> |
2018-03-27 03:24:05 | rhettinger | link | issue30100 messages |
2018-03-27 03:24:05 | rhettinger | create | |
|