| Index: third_party/protobuf/src/google/protobuf/compiler/java/java_message_field.h
|
| diff --git a/third_party/protobuf/src/google/protobuf/compiler/java/java_message_field.h b/third_party/protobuf/src/google/protobuf/compiler/java/java_message_field.h
|
| index 66bdd8840af07dfb46fcad57e77b8b7db4fc2971..2efbcd97b043c5ddc0797e420db2af31d88cff81 100644
|
| --- a/third_party/protobuf/src/google/protobuf/compiler/java/java_message_field.h
|
| +++ b/third_party/protobuf/src/google/protobuf/compiler/java/java_message_field.h
|
| @@ -46,50 +46,84 @@ namespace java {
|
|
|
| class MessageFieldGenerator : public FieldGenerator {
|
| public:
|
| - explicit MessageFieldGenerator(const FieldDescriptor* descriptor);
|
| + explicit MessageFieldGenerator(const FieldDescriptor* descriptor,
|
| + int messageBitIndex, int builderBitIndex);
|
| ~MessageFieldGenerator();
|
|
|
| // implements FieldGenerator ---------------------------------------
|
| + int GetNumBitsForMessage() const;
|
| + int GetNumBitsForBuilder() const;
|
| + void GenerateInterfaceMembers(io::Printer* printer) const;
|
| void GenerateMembers(io::Printer* printer) const;
|
| void GenerateBuilderMembers(io::Printer* printer) const;
|
| void GenerateInitializationCode(io::Printer* printer) const;
|
| + void GenerateBuilderClearCode(io::Printer* printer) const;
|
| void GenerateMergingCode(io::Printer* printer) const;
|
| void GenerateBuildingCode(io::Printer* printer) const;
|
| void GenerateParsingCode(io::Printer* printer) const;
|
| void GenerateSerializationCode(io::Printer* printer) const;
|
| void GenerateSerializedSizeCode(io::Printer* printer) const;
|
| + void GenerateFieldBuilderInitializationCode(io::Printer* printer) const;
|
| + void GenerateEqualsCode(io::Printer* printer) const;
|
| + void GenerateHashCode(io::Printer* printer) const;
|
|
|
| string GetBoxedType() const;
|
|
|
| private:
|
| const FieldDescriptor* descriptor_;
|
| map<string, string> variables_;
|
| + const int messageBitIndex_;
|
| + const int builderBitIndex_;
|
|
|
| GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageFieldGenerator);
|
| +
|
| + void PrintNestedBuilderCondition(io::Printer* printer,
|
| + const char* regular_case, const char* nested_builder_case) const;
|
| + void PrintNestedBuilderFunction(io::Printer* printer,
|
| + const char* method_prototype, const char* regular_case,
|
| + const char* nested_builder_case,
|
| + const char* trailing_code) const;
|
| };
|
|
|
| class RepeatedMessageFieldGenerator : public FieldGenerator {
|
| public:
|
| - explicit RepeatedMessageFieldGenerator(const FieldDescriptor* descriptor);
|
| + explicit RepeatedMessageFieldGenerator(const FieldDescriptor* descriptor,
|
| + int messageBitIndex, int builderBitIndex);
|
| ~RepeatedMessageFieldGenerator();
|
|
|
| // implements FieldGenerator ---------------------------------------
|
| + int GetNumBitsForMessage() const;
|
| + int GetNumBitsForBuilder() const;
|
| + void GenerateInterfaceMembers(io::Printer* printer) const;
|
| void GenerateMembers(io::Printer* printer) const;
|
| void GenerateBuilderMembers(io::Printer* printer) const;
|
| void GenerateInitializationCode(io::Printer* printer) const;
|
| + void GenerateBuilderClearCode(io::Printer* printer) const;
|
| void GenerateMergingCode(io::Printer* printer) const;
|
| void GenerateBuildingCode(io::Printer* printer) const;
|
| void GenerateParsingCode(io::Printer* printer) const;
|
| void GenerateSerializationCode(io::Printer* printer) const;
|
| void GenerateSerializedSizeCode(io::Printer* printer) const;
|
| + void GenerateFieldBuilderInitializationCode(io::Printer* printer) const;
|
| + void GenerateEqualsCode(io::Printer* printer) const;
|
| + void GenerateHashCode(io::Printer* printer) const;
|
|
|
| string GetBoxedType() const;
|
|
|
| private:
|
| const FieldDescriptor* descriptor_;
|
| map<string, string> variables_;
|
| + const int messageBitIndex_;
|
| + const int builderBitIndex_;
|
|
|
| GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RepeatedMessageFieldGenerator);
|
| +
|
| + void PrintNestedBuilderCondition(io::Printer* printer,
|
| + const char* regular_case, const char* nested_builder_case) const;
|
| + void PrintNestedBuilderFunction(io::Printer* printer,
|
| + const char* method_prototype, const char* regular_case,
|
| + const char* nested_builder_case,
|
| + const char* trailing_code) const;
|
| };
|
|
|
| } // namespace java
|
|
|