diff --git a/compiler/cpp/src/parse/t_struct.h b/compiler/cpp/src/parse/t_struct.h
index ce5f752..bebea2a 100644
--- a/compiler/cpp/src/parse/t_struct.h
+++ b/compiler/cpp/src/parse/t_struct.h
@@ -20,11 +20,13 @@
  public:
   t_struct(t_program* program) :
     t_type(program),
-    is_xception_(false) {}
+    is_xception_(false),
+    xsd_all_(false) {}
 
   t_struct(t_program* program, const std::string& name) :
     t_type(program, name),
-    is_xception_(false) {}
+    is_xception_(false),
+    xsd_all_(false) {}
 
   void set_name(const std::string& name) {
     name_ = name;
@@ -34,6 +36,14 @@
     is_xception_ = is_xception;
   }
 
+  void set_xsd_all(bool xsd_all) {
+    xsd_all_ = xsd_all;
+  }
+
+  bool get_xsd_all() const {
+    return xsd_all_;
+  }
+
   void append(t_field* elem) {
     members_.push_back(elem);
   }
@@ -53,6 +63,9 @@
  private:
   std::vector<t_field*> members_;
   bool is_xception_;
+
+  bool xsd_all_;
+
 };
 
 #endif
