Android: Optimize Java mojom classes for binary size

* Removes .equals() and .hashCode() (unused in non-test code)
* Coalesce version checks in decode()
* Move mTag field from generated to Union base class.

diagnose_bloat.py --enable-chrome-android-internal shows:

      -262 entries methods
   -33,740 bytes main dex size bytes main dex size

* Largest single symbol savings from equals(): -428
* Largest single symbol savings from hashCode(): -299
* Largest single symbol savings from decode(): -112

Bug: 828403
Change-Id: Iad41ec6baf0101fd5080375f3a0e65b561d90395
Reviewed-on: https://chromium-review.googlesource.com/1005031
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550354}

CrOS-Libchrome-Original-Commit: b41b27df3be8bcececacb1f5637d75b394f079e5
5 files changed
tree: 7529f67739062fe3896f3f38da810c0017f6a34e
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/