In php generate array of enum values to string names
authorMark Slee <mcslee@apache.org>
Tue, 10 Apr 2007 06:15:25 +0000 (06:15 +0000)
committerMark Slee <mcslee@apache.org>
Tue, 10 Apr 2007 06:15:25 +0000 (06:15 +0000)
Summary: for peter k

Reviewed By: peter

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

compiler/cpp/src/generate/t_php_generator.cc

index d5689c6..117d222 100644 (file)
@@ -110,6 +110,22 @@ void t_php_generator::generate_enum(t_enum* tenum) {
       "const " << (*c_iter)->get_name() << " = " << value << ";" << endl;
   }
 
+  indent(f_types_) <<
+    "static public __names = array(" << endl;
+  value = -1;
+  for (c_iter = constants.begin(); c_iter != constants.end(); ++c_iter) {
+    if ((*c_iter)->has_value()) {
+      value = (*c_iter)->get_value();
+    } else {
+      ++value;
+    }
+
+    indent(f_types_) <<
+      "  " << value << " => '" << (*c_iter)->get_name() << "'," << endl;
+  }
+  indent(f_types_) <<
+    ");" << endl;
+
   indent_down();
   f_types_ << "}" << endl << endl;
 }