aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/google/protobuf/compiler/javanano/javanano_params.h
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_params.h
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_params.h')
-rw-r--r--src/google/protobuf/compiler/javanano/javanano_params.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/google/protobuf/compiler/javanano/javanano_params.h b/src/google/protobuf/compiler/javanano/javanano_params.h
index 6e5379c1..24aece3a 100644
--- a/src/google/protobuf/compiler/javanano/javanano_params.h
+++ b/src/google/protobuf/compiler/javanano/javanano_params.h
@@ -61,6 +61,7 @@ class Params {
bool java_enum_style_;
bool optional_field_accessors_;
bool use_reference_types_for_primitives_;
+ bool generate_equals_;
public:
Params(const string & base_name) :
@@ -71,7 +72,8 @@ class Params {
generate_has_(false),
java_enum_style_(false),
optional_field_accessors_(false),
- use_reference_types_for_primitives_(false) {
+ use_reference_types_for_primitives_(false),
+ generate_equals_(false) {
}
const string& base_name() const {
@@ -186,6 +188,13 @@ class Params {
bool use_reference_types_for_primitives() const {
return use_reference_types_for_primitives_;
}
+
+ void set_generate_equals(bool value) {
+ generate_equals_ = value;
+ }
+ bool generate_equals() const {
+ return generate_equals_;
+ }
};
} // namespace javanano