|
@@ -289,6 +289,18 @@ void FileGenerator::GenerateSource(io::Printer* printer) {
|
|
|
"classname", message_generators_[i]->classname_);
|
|
|
}
|
|
|
|
|
|
+ for (int i = 0; i < message_generators_.size(); i++) {
|
|
|
+ message_generators_[i]->index_in_metadata_ = i;
|
|
|
+ }
|
|
|
+ for (int i = 0; i < enum_generators_.size(); i++) {
|
|
|
+ enum_generators_[i]->index_in_metadata_ = i;
|
|
|
+ }
|
|
|
+ if (HasGenericServices(file_, options_)) {
|
|
|
+ for (int i = 0; i < service_generators_.size(); i++) {
|
|
|
+ service_generators_[i]->index_in_metadata_ = i;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (HasDescriptorMethods(file_, options_)) {
|
|
|
printer->Print(
|
|
|
"\n"
|
|
@@ -313,17 +325,8 @@ void FileGenerator::GenerateSource(io::Printer* printer) {
|
|
|
}
|
|
|
|
|
|
for (int i = 0; i < message_generators_.size(); i++) {
|
|
|
- message_generators_[i]->index_in_metadata_ = i;
|
|
|
message_generators_[i]->GenerateDescriptorDeclarations(printer);
|
|
|
}
|
|
|
- for (int i = 0; i < enum_generators_.size(); i++) {
|
|
|
- enum_generators_[i]->index_in_metadata_ = i;
|
|
|
- }
|
|
|
- if (HasGenericServices(file_, options_)) {
|
|
|
- for (int i = 0; i < service_generators_.size(); i++) {
|
|
|
- service_generators_[i]->index_in_metadata_ = i;
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
printer->Print(
|
|
|
"\n"
|