In Java I would use Project Lombok&#39;s @EqualsAndHashCode annotation on a class. Caveats:<div><br></div><div>1. Swift is not Java and that&#39;s a good thing (TM).</div><div>2. Project Lombok is not Java, either.</div><div>3. &#39;deriving Equatable, Hashable&#39; makes those interfaces &#39;magic&#39;. Is that good?</div>