Honestly, the name I would most want for the keyword argument is '_hash'. That carries the semantics I desire. On Feb 6, 2018 10:13 AM, "Ethan Furman" <ethan at stoneleaf.us> wrote: > On 02/06/2018 09:38 AM, Guido van Rossum wrote: > > Where do you get the impression that one would have to explicitly request >> __hash__ if frozen=True is set? To the >> contrary, my proposal is for @dataclass to automatically add a __hash__ >> method when frozen=True is set. This is what the >> code currently released as 3.7.0b1 does if hash=None (the default). >> > > Which is my issue with the naming -- although, really, it's more with the > parameter/argument: in a hand-written class, > > __hash__ = None > > means the object in is not hashable, but with the decorator: > > @dataclass(..., hash=None, ...) > > it means something else. > > My preference for "fixing" the issue: > > 1) make the default be a custom object (not None), so that `hash=None` > means disable hashing > > 2) change the param name -- maybe to `add_hash` (I agree with D'Aprano > that `unsafe_hash` can be misleading) > > -- > ~Ethan~ > _______________________________________________ > Python-Dev mailing list > Python-Dev at python.org > https://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: https://mail.python.org/mailman/options/python-dev/mertz% > 40gnosis.cx > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20180206/172290ce/attachment.html>
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4