| OLD | NEW |
| 1 // Protocol Buffers - Google's data interchange format | 1 // Protocol Buffers - Google's data interchange format |
| 2 // Copyright 2008 Google Inc. All rights reserved. | 2 // Copyright 2008 Google Inc. All rights reserved. |
| 3 // https://developers.google.com/protocol-buffers/ | 3 // https://developers.google.com/protocol-buffers/ |
| 4 // | 4 // |
| 5 // Redistribution and use in source and binary forms, with or without | 5 // Redistribution and use in source and binary forms, with or without |
| 6 // modification, are permitted provided that the following conditions are | 6 // modification, are permitted provided that the following conditions are |
| 7 // met: | 7 // met: |
| 8 // | 8 // |
| 9 // * Redistributions of source code must retain the above copyright | 9 // * Redistributions of source code must retain the above copyright |
| 10 // notice, this list of conditions and the following disclaimer. | 10 // notice, this list of conditions and the following disclaimer. |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 51 ~StringFieldGenerator(); | 51 ~StringFieldGenerator(); |
| 52 | 52 |
| 53 // implements FieldGenerator --------------------------------------- | 53 // implements FieldGenerator --------------------------------------- |
| 54 void GeneratePrivateMembers(io::Printer* printer) const; | 54 void GeneratePrivateMembers(io::Printer* printer) const; |
| 55 void GenerateStaticMembers(io::Printer* printer) const; | 55 void GenerateStaticMembers(io::Printer* printer) const; |
| 56 void GenerateAccessorDeclarations(io::Printer* printer) const; | 56 void GenerateAccessorDeclarations(io::Printer* printer) const; |
| 57 void GenerateInlineAccessorDefinitions(io::Printer* printer, | 57 void GenerateInlineAccessorDefinitions(io::Printer* printer, |
| 58 bool is_inline) const; | 58 bool is_inline) const; |
| 59 void GenerateNonInlineAccessorDefinitions(io::Printer* printer) const; | 59 void GenerateNonInlineAccessorDefinitions(io::Printer* printer) const; |
| 60 void GenerateClearingCode(io::Printer* printer) const; | 60 void GenerateClearingCode(io::Printer* printer) const; |
| 61 void GenerateMessageClearingCode(io::Printer* printer) const; | |
| 62 void GenerateMergingCode(io::Printer* printer) const; | 61 void GenerateMergingCode(io::Printer* printer) const; |
| 63 void GenerateSwappingCode(io::Printer* printer) const; | 62 void GenerateSwappingCode(io::Printer* printer) const; |
| 64 void GenerateConstructorCode(io::Printer* printer) const; | 63 void GenerateConstructorCode(io::Printer* printer) const; |
| 65 void GenerateCopyConstructorCode(io::Printer* printer) const; | |
| 66 void GenerateDestructorCode(io::Printer* printer) const; | 64 void GenerateDestructorCode(io::Printer* printer) const; |
| 67 void GenerateDefaultInstanceAllocator(io::Printer* printer) const; | 65 void GenerateDefaultInstanceAllocator(io::Printer* printer) const; |
| 68 void GenerateShutdownCode(io::Printer* printer) const; | 66 void GenerateShutdownCode(io::Printer* printer) const; |
| 69 void GenerateMergeFromCodedStream(io::Printer* printer) const; | 67 void GenerateMergeFromCodedStream(io::Printer* printer) const; |
| 70 void GenerateSerializeWithCachedSizes(io::Printer* printer) const; | 68 void GenerateSerializeWithCachedSizes(io::Printer* printer) const; |
| 71 void GenerateSerializeWithCachedSizesToArray(io::Printer* printer) const; | 69 void GenerateSerializeWithCachedSizesToArray(io::Printer* printer) const; |
| 72 void GenerateByteSize(io::Printer* printer) const; | 70 void GenerateByteSize(io::Printer* printer) const; |
| 73 | 71 |
| 74 protected: | 72 protected: |
| 75 const FieldDescriptor* descriptor_; | 73 const FieldDescriptor* descriptor_; |
| 76 std::map<string, string> variables_; | 74 map<string, string> variables_; |
| 77 | 75 |
| 78 private: | 76 private: |
| 79 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringFieldGenerator); | 77 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringFieldGenerator); |
| 80 }; | 78 }; |
| 81 | 79 |
| 82 class StringOneofFieldGenerator : public StringFieldGenerator { | 80 class StringOneofFieldGenerator : public StringFieldGenerator { |
| 83 public: | 81 public: |
| 84 StringOneofFieldGenerator(const FieldDescriptor* descriptor, | 82 StringOneofFieldGenerator(const FieldDescriptor* descriptor, |
| 85 const Options& options); | 83 const Options& options); |
| 86 ~StringOneofFieldGenerator(); | 84 ~StringOneofFieldGenerator(); |
| 87 | 85 |
| 88 // implements FieldGenerator --------------------------------------- | 86 // implements FieldGenerator --------------------------------------- |
| 89 void GenerateInlineAccessorDefinitions(io::Printer* printer, | 87 void GenerateInlineAccessorDefinitions(io::Printer* printer, |
| 90 bool is_inline) const; | 88 bool is_inline) const; |
| 91 void GenerateClearingCode(io::Printer* printer) const; | 89 void GenerateClearingCode(io::Printer* printer) const; |
| 92 | |
| 93 // StringFieldGenerator, from which we inherit, overrides this so we need to | |
| 94 // override it as well. | |
| 95 void GenerateMessageClearingCode(io::Printer* printer) const; | |
| 96 void GenerateSwappingCode(io::Printer* printer) const; | 90 void GenerateSwappingCode(io::Printer* printer) const; |
| 97 void GenerateConstructorCode(io::Printer* printer) const; | 91 void GenerateConstructorCode(io::Printer* printer) const; |
| 98 void GenerateDestructorCode(io::Printer* printer) const; | 92 void GenerateDestructorCode(io::Printer* printer) const; |
| 99 void GenerateMergeFromCodedStream(io::Printer* printer) const; | 93 void GenerateMergeFromCodedStream(io::Printer* printer) const; |
| 100 | 94 |
| 101 private: | 95 private: |
| 102 const bool dependent_field_; | 96 const bool dependent_field_; |
| 103 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringOneofFieldGenerator); | 97 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringOneofFieldGenerator); |
| 104 }; | 98 }; |
| 105 | 99 |
| 106 class RepeatedStringFieldGenerator : public FieldGenerator { | 100 class RepeatedStringFieldGenerator : public FieldGenerator { |
| 107 public: | 101 public: |
| 108 RepeatedStringFieldGenerator(const FieldDescriptor* descriptor, | 102 RepeatedStringFieldGenerator(const FieldDescriptor* descriptor, |
| 109 const Options& options); | 103 const Options& options); |
| 110 ~RepeatedStringFieldGenerator(); | 104 ~RepeatedStringFieldGenerator(); |
| 111 | 105 |
| 112 // implements FieldGenerator --------------------------------------- | 106 // implements FieldGenerator --------------------------------------- |
| 113 void GeneratePrivateMembers(io::Printer* printer) const; | 107 void GeneratePrivateMembers(io::Printer* printer) const; |
| 114 void GenerateAccessorDeclarations(io::Printer* printer) const; | 108 void GenerateAccessorDeclarations(io::Printer* printer) const; |
| 115 void GenerateInlineAccessorDefinitions(io::Printer* printer, | 109 void GenerateInlineAccessorDefinitions(io::Printer* printer, |
| 116 bool is_inline) const; | 110 bool is_inline) const; |
| 117 void GenerateClearingCode(io::Printer* printer) const; | 111 void GenerateClearingCode(io::Printer* printer) const; |
| 118 void GenerateMergingCode(io::Printer* printer) const; | 112 void GenerateMergingCode(io::Printer* printer) const; |
| 119 void GenerateSwappingCode(io::Printer* printer) const; | 113 void GenerateSwappingCode(io::Printer* printer) const; |
| 120 void GenerateConstructorCode(io::Printer* printer) const; | 114 void GenerateConstructorCode(io::Printer* printer) const; |
| 121 void GenerateCopyConstructorCode(io::Printer* printer) const; | |
| 122 void GenerateMergeFromCodedStream(io::Printer* printer) const; | 115 void GenerateMergeFromCodedStream(io::Printer* printer) const; |
| 123 void GenerateSerializeWithCachedSizes(io::Printer* printer) const; | 116 void GenerateSerializeWithCachedSizes(io::Printer* printer) const; |
| 124 void GenerateSerializeWithCachedSizesToArray(io::Printer* printer) const; | 117 void GenerateSerializeWithCachedSizesToArray(io::Printer* printer) const; |
| 125 void GenerateByteSize(io::Printer* printer) const; | 118 void GenerateByteSize(io::Printer* printer) const; |
| 126 | 119 |
| 127 private: | 120 private: |
| 128 const FieldDescriptor* descriptor_; | 121 const FieldDescriptor* descriptor_; |
| 129 std::map<string, string> variables_; | 122 map<string, string> variables_; |
| 130 | 123 |
| 131 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RepeatedStringFieldGenerator); | 124 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RepeatedStringFieldGenerator); |
| 132 }; | 125 }; |
| 133 | 126 |
| 134 } // namespace cpp | 127 } // namespace cpp |
| 135 } // namespace compiler | 128 } // namespace compiler |
| 136 } // namespace protobuf | 129 } // namespace protobuf |
| 137 | 130 |
| 138 } // namespace google | 131 } // namespace google |
| 139 #endif // GOOGLE_PROTOBUF_COMPILER_CPP_STRING_FIELD_H__ | 132 #endif // GOOGLE_PROTOBUF_COMPILER_CPP_STRING_FIELD_H__ |
| OLD | NEW |