aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/google/protobuf/compiler/javanano/javanano_generator.cc
diff options
context:
space:
mode:
authorGravatar Brian Duff <bduff@google.com>2013-10-15 18:35:44 -0700
committerGravatar Max Cai <maxtroy@google.com>2013-10-25 16:06:21 +0100
commit56a37328ae568225a672a4ba2654710caa0b8e59 (patch)
tree3201f50635c71bc298c1aef45d23106f3e06cee3 /src/google/protobuf/compiler/javanano/javanano_generator.cc
parent461d4ac87a5a6dee584da0c8451cdaae253f3873 (diff)
Implement hashCode() and equals() behind a generator option.
The option is only called 'generate_equals' because: - equals() is the main thing; hashCode() is there only to complement equals(); - it's shorter; - toString() should not be included in this option because it's more for debugging and it's more likely to stop ProGuard from working well. Also shortened the "has bit" expression; was ((bitField & mask) == mask), now ((bitField & mask) != 0). Both the Java code and the bytecode are slightly shorter. Change-Id: Ic309a08a60883bf454eb6612679aa99611620e76
Diffstat (limited to 'src/google/protobuf/compiler/javanano/javanano_generator.cc')
-rw-r--r--src/google/protobuf/compiler/javanano/javanano_generator.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/google/protobuf/compiler/javanano/javanano_generator.cc b/src/google/protobuf/compiler/javanano/javanano_generator.cc
index 48c3a215..5c8bcb60 100644
--- a/src/google/protobuf/compiler/javanano/javanano_generator.cc
+++ b/src/google/protobuf/compiler/javanano/javanano_generator.cc
@@ -125,6 +125,8 @@ bool JavaNanoGenerator::Generate(const FileDescriptor* file,
} else if (options[i].first == "optional_field_style") {
params.set_optional_field_accessors(options[i].second == "accessors");
params.set_use_reference_types_for_primitives(options[i].second == "reftypes");
+ } else if (options[i].first == "generate_equals") {
+ params.set_generate_equals(options[i].second == "true");
} else {
*error = "Ignore unknown javanano generator option: " + options[i].first;
}