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",