TBH, I prefer this phrasing. It makes the proposal "add a common skip
attribute" instead of "add a bunch of customization knobs".
Then #[skip(Hash)]
works for fields not worth hashing, and the compiler can do things like deny
if you derive(PartialEq, Hash)
but have skip(PartialEq)
, since that means that the Hash
implementation is just wrong.