diff options
author | Max Cai <maxtroy@google.com> | 2013-10-11 16:41:41 +0100 |
---|---|---|
committer | Max Cai <maxtroy@google.com> | 2013-10-11 16:44:40 +0100 |
commit | 5ae438cf71487d5bc8cb5c0d0e637f976734d110 (patch) | |
tree | 688c10f285f9594d56d791d1757fc81f6c4d70ec /src/google/protobuf/compiler/javanano/javanano_primitive_field.cc | |
parent | cbb08132821cb56f4e6c5e5f8a0b32f51879782a (diff) | |
download | external_protobuf-5ae438cf71487d5bc8cb5c0d0e637f976734d110.zip external_protobuf-5ae438cf71487d5bc8cb5c0d0e637f976734d110.tar.gz external_protobuf-5ae438cf71487d5bc8cb5c0d0e637f976734d110.tar.bz2 |
Remove all field initializers and let ctor call clear().
The field initializers have basically caused the compiled <init> method
to inline the whole clear() method, which means if ProGuard is not used
or failed to inline or remove clear(), there are two big chunks of code
that do the same thing. So why not just call clear() from the ctor.
Change-Id: Ief71e2b03db2e059b3bfa98309649368089ffab0
Diffstat (limited to 'src/google/protobuf/compiler/javanano/javanano_primitive_field.cc')
-rw-r--r-- | src/google/protobuf/compiler/javanano/javanano_primitive_field.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/google/protobuf/compiler/javanano/javanano_primitive_field.cc b/src/google/protobuf/compiler/javanano/javanano_primitive_field.cc index d71b30b..f5e27d6 100644 --- a/src/google/protobuf/compiler/javanano/javanano_primitive_field.cc +++ b/src/google/protobuf/compiler/javanano/javanano_primitive_field.cc @@ -315,7 +315,7 @@ GenerateMembers(io::Printer* printer) const { } printer->Print(variables_, - "public $type$ $name$ = $default_copy_if_needed$;\n"); + "public $type$ $name$;\n"); if (params_.generate_has()) { printer->Print(variables_, @@ -427,7 +427,7 @@ GenerateMembers(io::Printer* printer) const { "private static final $type$ $default_constant$ = $default_constant_value$;\n"); } printer->Print(variables_, - "private $type$ $name$_ = $default_copy_if_needed$;\n" + "private $type$ $name$_;\n" "public $type$ get$capitalized_name$() {\n" " return $name$_;\n" "}\n" @@ -495,7 +495,7 @@ RepeatedPrimitiveFieldGenerator::~RepeatedPrimitiveFieldGenerator() {} void RepeatedPrimitiveFieldGenerator:: GenerateMembers(io::Printer* printer) const { printer->Print(variables_, - "public $type$[] $name$ = $default$;\n"); + "public $type$[] $name$;\n"); } void RepeatedPrimitiveFieldGenerator:: @@ -526,7 +526,8 @@ GenerateMergingCode(io::Printer* printer) const { "input.popLimit(limit);\n"); } else { printer->Print(variables_, - "int arrayLength = com.google.protobuf.nano.WireFormatNano.getRepeatedFieldArrayLength(input, $tag$);\n" + "int arrayLength = com.google.protobuf.nano.WireFormatNano\n" + " .getRepeatedFieldArrayLength(input, $tag$);\n" "int i = this.$name$.length;\n"); if (GetJavaType(descriptor_) == JAVATYPE_BYTES) { |