[swift-evolution] [Review] SE-0185 - Synthesizing Equatable and Hashable conformance

Ben Rimmington me at benrimmington.com
Fri Aug 11 16:44:33 CDT 2017


<https://github.com/apple/swift-evolution/blob/master/proposals/0185-synthesize-equatable-hashable.md>

## What is your evaluation of the proposal? ##

+1

When `Codable` can be synthesized in a same-file extension, the same should hopefully be possible with `Equatable` and `Hashable`.

	"We can relax this restriction soon; it will just require some additional implementation that's not ready yet."
	<https://github.com/apple/swift/pull/9758#issuecomment-302752673>

An empty same-file extension will be sufficient to opt-in, so `AutoEquatable` and `AutoHashable` aren't necessary.

	extension Token: Hashable {}

## Is the problem being addressed significant enough to warrant a change to Swift? ##

Yes, eliminating boilerplate and bug-prone code is a worthwhile contribution.

## Does this proposal fit well with the feel and direction of Swift? ##

Yes, it follows the existing rules for `Codable` synthesis.

## How much effort did you put into your review? A glance, a quick reading, or an in-depth study? ##

A quick reading.



More information about the swift-evolution mailing list