Thrift should generate C++ enums first before typdefs
authorMark Slee <mcslee@apache.org>
Tue, 16 Jan 2007 23:00:31 +0000 (23:00 +0000)
committerMark Slee <mcslee@apache.org>
Tue, 16 Jan 2007 23:00:31 +0000 (23:00 +0000)
Summary: In case you want to typedef an enum

Reviewed By: aditya

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664916 13f79535-47bb-0310-9956-ffa450edef68

compiler/cpp/src/generate/t_generator.cc

index e4e010a..b575cf4 100644 (file)
@@ -13,13 +13,6 @@ void t_generator::generate_program() {
   // Initialize the generator
   init_generator();
 
-  // Generate typedefs
-  vector<t_typedef*> typedefs = program_->get_typedefs();
-  vector<t_typedef*>::iterator td_iter;
-  for (td_iter = typedefs.begin(); td_iter != typedefs.end(); ++td_iter) {
-    generate_typedef(*td_iter);
-  }
-
   // Generate enums
   vector<t_enum*> enums = program_->get_enums();
   vector<t_enum*>::iterator en_iter;
@@ -27,6 +20,13 @@ void t_generator::generate_program() {
     generate_enum(*en_iter);
   }
 
+  // Generate typedefs
+  vector<t_typedef*> typedefs = program_->get_typedefs();
+  vector<t_typedef*>::iterator td_iter;
+  for (td_iter = typedefs.begin(); td_iter != typedefs.end(); ++td_iter) {
+    generate_typedef(*td_iter);
+  }
+
   // Generate constants
   vector<t_const*> consts = program_->get_consts();
   generate_consts(consts);