Make toString(), hashCode(), equals() and friends final in AutoValue classes
Developers usually don't look at the classes that AutoValue generates,
but at the hand-written classes. If the hand-written classes implement
toString(), hashCode(), equals() etc, AutoValue doesn't override them.
To make this more clear to readers of the hand-written classes
ErrorProne suggests to make these methods final.
See https://errorprone.info/bugpattern/AutoValueFinalMethods
Enable this check at ERROR severity to prevent future occurrences.
Signed-off-by: Edwin Kempin <ekempin@google.com>
Change-Id: I972e8e8f9339b811c78157abef771b8c32be079c
diff --git a/tools/BUILD b/tools/BUILD
index 15a3185..89ce558 100644
--- a/tools/BUILD
+++ b/tools/BUILD
@@ -32,6 +32,7 @@
javacopts = [
"-XepDisableWarningsInGeneratedCode",
"-Xep:AmbiguousMethodReference:ERROR",
+ "-Xep:AutoValueFinalMethods:ERROR",
"-Xep:BadAnnotationImplementation:ERROR",
"-Xep:BadComparable:ERROR",
"-Xep:BoxedPrimitiveConstructor:ERROR",