@@ -86,9 +86,6 @@ void SetMessageVariables(
86
86
(*variables)[" set_has_field_bit_to_local" ] =
87
87
GenerateSetBitToLocal (messageBitIndex);
88
88
89
- // We use `x.getClass()` as a null check because it generates less bytecode
90
- // than an `if (x == null) { throw ... }` statement.
91
- (*variables)[" null_check" ] = " value.getClass();\n " ;
92
89
// Annotations often use { and } to determine ranges.
93
90
(*variables)[" {" ] = " " ;
94
91
(*variables)[" }" ] = " " ;
@@ -178,8 +175,9 @@ void ImmutableMessageFieldLiteGenerator::GenerateMembers(
178
175
// Field.Builder setField(Field value)
179
176
WriteFieldDocComment (printer, descriptor_, context_->options ());
180
177
printer->Print (variables_,
178
+ " @java.lang.SuppressWarnings(\" ReturnValueIgnored\" )\n "
181
179
" private void set$capitalized_name$($type$ value) {\n "
182
- " $null_check$ "
180
+ " value.getClass(); // minimal bytecode null check \n "
183
181
" $name$_ = value;\n "
184
182
" $set_has_field_bit_message$\n "
185
183
" }\n " );
@@ -188,9 +186,10 @@ void ImmutableMessageFieldLiteGenerator::GenerateMembers(
188
186
WriteFieldDocComment (printer, descriptor_, context_->options ());
189
187
printer->Print (
190
188
variables_,
191
- " @java.lang.SuppressWarnings({\" ReferenceEquality\" })\n "
189
+ " @java.lang.SuppressWarnings({\" ReferenceEquality\" , "
190
+ " \" ReturnValueIgnored\" })\n "
192
191
" private void merge$capitalized_name$($type$ value) {\n "
193
- " $null_check$ "
192
+ " value.getClass(); // minimal bytecode null check \n "
194
193
" if ($name$_ != null &&\n "
195
194
" $name$_ != $type$.getDefaultInstance()) {\n "
196
195
" $name$_ =\n "
@@ -384,8 +383,9 @@ void ImmutableMessageOneofFieldLiteGenerator::GenerateMembers(
384
383
// Field.Builder setField(Field value)
385
384
WriteFieldDocComment (printer, descriptor_, context_->options ());
386
385
printer->Print (variables_,
386
+ " @java.lang.SuppressWarnings(\" ReturnValueIgnored\" )\n "
387
387
" private void set$capitalized_name$($type$ value) {\n "
388
- " $null_check$ "
388
+ " value.getClass(); // minimal bytecode null check \n "
389
389
" $oneof_name$_ = value;\n "
390
390
" $set_oneof_case_message$;\n "
391
391
" }\n " );
@@ -394,8 +394,9 @@ void ImmutableMessageOneofFieldLiteGenerator::GenerateMembers(
394
394
WriteFieldDocComment (printer, descriptor_, context_->options ());
395
395
printer->Print (
396
396
variables_,
397
+ " @java.lang.SuppressWarnings(\" ReturnValueIgnored\" )\n "
397
398
" private void merge$capitalized_name$($type$ value) {\n "
398
- " $null_check$ "
399
+ " value.getClass(); // minimal bytecode null check \n "
399
400
" if ($has_oneof_case_message$ &&\n "
400
401
" $oneof_name$_ != $type$.getDefaultInstance()) {\n "
401
402
" $oneof_name$_ = $type$.newBuilder(($type$) $oneof_name$_)\n "
@@ -599,28 +600,31 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateMembers(
599
600
// Builder setRepeatedField(int index, Field value)
600
601
WriteFieldDocComment (printer, descriptor_, context_->options ());
601
602
printer->Print (variables_,
603
+ " @java.lang.SuppressWarnings(\" ReturnValueIgnored\" )\n "
602
604
" private void set$capitalized_name$(\n "
603
605
" int index, $type$ value) {\n "
604
- " $null_check$ "
606
+ " value.getClass(); // minimal bytecode null check \n "
605
607
" ensure$capitalized_name$IsMutable();\n "
606
608
" $name$_.set(index, value);\n "
607
609
" }\n " );
608
610
609
611
// Builder addRepeatedField(Field value)
610
612
WriteFieldDocComment (printer, descriptor_, context_->options ());
611
613
printer->Print (variables_,
614
+ " @java.lang.SuppressWarnings(\" ReturnValueIgnored\" )\n "
612
615
" private void add$capitalized_name$($type$ value) {\n "
613
- " $null_check$ "
616
+ " value.getClass(); // minimal bytecode null check \n "
614
617
" ensure$capitalized_name$IsMutable();\n "
615
618
" $name$_.add(value);\n "
616
619
" }\n " );
617
620
618
621
// Builder addRepeatedField(int index, Field value)
619
622
WriteFieldDocComment (printer, descriptor_, context_->options ());
620
623
printer->Print (variables_,
624
+ " @java.lang.SuppressWarnings(\" ReturnValueIgnored\" )\n "
621
625
" private void add$capitalized_name$(\n "
622
626
" int index, $type$ value) {\n "
623
- " $null_check$ "
627
+ " value.getClass(); // minimal bytecode null check \n "
624
628
" ensure$capitalized_name$IsMutable();\n "
625
629
" $name$_.add(index, value);\n "
626
630
" }\n " );
0 commit comments