|
@@ -59,6 +59,7 @@ void SetEnumVariables(const Params& params,
|
|
RenameJavaKeywords(UnderscoresToCapitalizedCamelCase(descriptor));
|
|
RenameJavaKeywords(UnderscoresToCapitalizedCamelCase(descriptor));
|
|
(*variables)["number"] = SimpleItoa(descriptor->number());
|
|
(*variables)["number"] = SimpleItoa(descriptor->number());
|
|
if (params.use_reference_types_for_primitives()
|
|
if (params.use_reference_types_for_primitives()
|
|
|
|
+ && !params.reftypes_primitive_enums()
|
|
&& !descriptor->is_repeated()) {
|
|
&& !descriptor->is_repeated()) {
|
|
(*variables)["type"] = "java.lang.Integer";
|
|
(*variables)["type"] = "java.lang.Integer";
|
|
(*variables)["default"] = "null";
|
|
(*variables)["default"] = "null";
|
|
@@ -197,7 +198,8 @@ GenerateSerializedSizeCode(io::Printer* printer) const {
|
|
}
|
|
}
|
|
|
|
|
|
void EnumFieldGenerator::GenerateEqualsCode(io::Printer* printer) const {
|
|
void EnumFieldGenerator::GenerateEqualsCode(io::Printer* printer) const {
|
|
- if (params_.use_reference_types_for_primitives()) {
|
|
|
|
|
|
+ if (params_.use_reference_types_for_primitives()
|
|
|
|
+ && !params_.reftypes_primitive_enums()) {
|
|
printer->Print(variables_,
|
|
printer->Print(variables_,
|
|
"if (this.$name$ == null) {\n"
|
|
"if (this.$name$ == null) {\n"
|
|
" if (other.$name$ != null) {\n"
|
|
" if (other.$name$ != null) {\n"
|
|
@@ -228,7 +230,8 @@ void EnumFieldGenerator::GenerateEqualsCode(io::Printer* printer) const {
|
|
void EnumFieldGenerator::GenerateHashCodeCode(io::Printer* printer) const {
|
|
void EnumFieldGenerator::GenerateHashCodeCode(io::Printer* printer) const {
|
|
printer->Print(
|
|
printer->Print(
|
|
"result = 31 * result + ");
|
|
"result = 31 * result + ");
|
|
- if (params_.use_reference_types_for_primitives()) {
|
|
|
|
|
|
+ if (params_.use_reference_types_for_primitives()
|
|
|
|
+ && !params_.reftypes_primitive_enums()) {
|
|
printer->Print(variables_,
|
|
printer->Print(variables_,
|
|
"(this.$name$ == null ? 0 : this.$name$)");
|
|
"(this.$name$ == null ? 0 : this.$name$)");
|
|
} else {
|
|
} else {
|