aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/google/protobuf/compiler/objectivec/objectivec_file.h
diff options
context:
space:
mode:
authorGravatar Thomas Van Lenten <thomasvl@google.com>2016-08-30 10:51:59 -0400
committerGravatar Thomas Van Lenten <thomasvl@google.com>2016-08-30 10:51:59 -0400
commit78a6d310de8eeb7316092a193fd64b0bfb584d0c (patch)
tree4c5187a3a7f3ba58f9e2703bcd79485bfe25a083 /src/google/protobuf/compiler/objectivec/objectivec_file.h
parente721ce66cfeaa5d8790ecba09c73d1ef399887d2 (diff)
Speed up ObjC Generation with large dependency trees
Don't create FileGenerators for each dep. FileGenerators will deeply create all the message, enum, and field generators; but those aren't needed when doing the imports for dependencies. Instead directly generate the imports off the FileDescriptors so no extra objects are created. The only other use was when chaining together the *Roots for the file extension registry, but that also can be generate off the name of the FileDescriptor directly.
Diffstat (limited to 'src/google/protobuf/compiler/objectivec/objectivec_file.h')
-rw-r--r--src/google/protobuf/compiler/objectivec/objectivec_file.h13
1 files changed, 0 insertions, 13 deletions
diff --git a/src/google/protobuf/compiler/objectivec/objectivec_file.h b/src/google/protobuf/compiler/objectivec/objectivec_file.h
index 60b19f19..a60a6885 100644
--- a/src/google/protobuf/compiler/objectivec/objectivec_file.h
+++ b/src/google/protobuf/compiler/objectivec/objectivec_file.h
@@ -63,29 +63,16 @@ class FileGenerator {
const string& RootClassName() const { return root_class_name_; }
- bool IsPublicDependency() const { return is_public_dep_; }
-
- protected:
- void SetIsPublicDependency(bool is_public_dep) {
- is_public_dep_ = is_public_dep;
- }
-
private:
const FileDescriptor* file_;
string root_class_name_;
- // Access this field through the DependencyGenerators accessor call below.
- // Do not reference it directly.
- vector<FileGenerator*> dependency_generators_;
-
vector<EnumGenerator*> enum_generators_;
vector<MessageGenerator*> message_generators_;
vector<ExtensionGenerator*> extension_generators_;
- bool is_public_dep_;
const Options options_;
- const vector<FileGenerator*>& DependencyGenerators();
void PrintFileRuntimePreamble(
io::Printer* printer, const string& header_to_import) const;