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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 const Options& options); | 59 const Options& options); |
60 ~MessageGenerator(); | 60 ~MessageGenerator(); |
61 | 61 |
62 void GenerateStaticVariablesInitialization(io::Printer* printer); | 62 void GenerateStaticVariablesInitialization(io::Printer* printer); |
63 void GenerateEnumHeader(io::Printer* printer); | 63 void GenerateEnumHeader(io::Printer* printer); |
64 void GenerateMessageHeader(io::Printer* printer); | 64 void GenerateMessageHeader(io::Printer* printer); |
65 void GenerateSource(io::Printer* printer); | 65 void GenerateSource(io::Printer* printer); |
66 void GenerateExtensionRegistrationSource(io::Printer* printer); | 66 void GenerateExtensionRegistrationSource(io::Printer* printer); |
67 void DetermineForwardDeclarations(set<string>* fwd_decls); | 67 void DetermineForwardDeclarations(set<string>* fwd_decls); |
68 | 68 |
69 // Checks if the message or a nested message includes a oneof definition. | |
70 bool IncludesOneOfDefinition() const; | |
71 | |
72 private: | 69 private: |
73 void GenerateParseFromMethodsHeader(io::Printer* printer); | 70 void GenerateParseFromMethodsHeader(io::Printer* printer); |
74 | 71 |
75 void GenerateSerializeOneFieldSource(io::Printer* printer, | 72 void GenerateSerializeOneFieldSource(io::Printer* printer, |
76 const FieldDescriptor* field); | 73 const FieldDescriptor* field); |
77 void GenerateSerializeOneExtensionRangeSource( | 74 void GenerateSerializeOneExtensionRangeSource( |
78 io::Printer* printer, const Descriptor::ExtensionRange* range); | 75 io::Printer* printer, const Descriptor::ExtensionRange* range); |
79 | 76 |
80 void GenerateMessageDescriptionSource(io::Printer* printer); | 77 void GenerateMessageDescriptionSource(io::Printer* printer); |
81 void GenerateDescriptionOneFieldSource(io::Printer* printer, | 78 void GenerateDescriptionOneFieldSource(io::Printer* printer, |
82 const FieldDescriptor* field); | 79 const FieldDescriptor* field); |
83 | 80 |
84 const string root_classname_; | 81 const string root_classname_; |
85 const Descriptor* descriptor_; | 82 const Descriptor* descriptor_; |
86 FieldGeneratorMap field_generators_; | 83 FieldGeneratorMap field_generators_; |
87 const string class_name_; | 84 const string class_name_; |
88 const string deprecated_attribute_; | |
89 vector<ExtensionGenerator*> extension_generators_; | 85 vector<ExtensionGenerator*> extension_generators_; |
90 vector<EnumGenerator*> enum_generators_; | 86 vector<EnumGenerator*> enum_generators_; |
91 vector<MessageGenerator*> nested_message_generators_; | 87 vector<MessageGenerator*> nested_message_generators_; |
92 vector<OneofGenerator*> oneof_generators_; | 88 vector<OneofGenerator*> oneof_generators_; |
93 | 89 |
94 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageGenerator); | 90 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageGenerator); |
95 }; | 91 }; |
96 } // namespace objectivec | 92 } // namespace objectivec |
97 } // namespace compiler | 93 } // namespace compiler |
98 } // namespace protobuf | 94 } // namespace protobuf |
99 } // namespace google | 95 } // namespace google |
100 #endif // GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_MESSAGE_H__ | 96 #endif // GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_MESSAGE_H__ |
OLD | NEW |