Sealed sub-class -> object: handle equals, suggest "add equals"

Before this commit, sealed sub-class without state was considered
a style issue.
After this commit, sealed sub-class without state AND custom equals
is considered a probable bug,
because comparison of its instances is very fragile.
Alternative fix (generate equals & hashCode by identity) is added.
This commit is contained in:
Mikhail Glukhikh
2018-06-13 18:05:46 +03:00
parent ecd2709a11
commit 9ef89447b3
27 changed files with 222 additions and 51 deletions
@@ -1,5 +1,6 @@
<html>
<body>
This inspection reports direct inheritors of <b>sealed class</b> that have no state and thus can be objects.
This inspection reports direct inheritors of <b>sealed class</b> that have no state and no overridden <b>equals</b>.
It's highly recommended to override <b>equals</b> to provide comparison stability or convert <b>class</b> to <b>object</b> with the same effect.
</body>
</html>