OpenDDS  Snapshot(2023/04/28-20:55)
marshal_generator.h
Go to the documentation of this file.
1 /*
2  *
3  *
4  * Distributed under the OpenDDS License.
5  * See: http://www.opendds.org/license.html
6  */
7 
8 #ifndef marshal_generator_H
9 #define marshal_generator_H
10 
11 #include "dds_generator.h"
12 
14 public:
15  bool gen_enum(AST_Enum* node, UTL_ScopedName* name,
16  const std::vector<AST_EnumVal*>& contents, const char* repoid);
17 
18  bool gen_struct(AST_Structure* node, UTL_ScopedName* name,
19  const std::vector<AST_Field*>& fields,
20  AST_Type::SIZE_TYPE size, const char* repoid);
21 
22  bool gen_typedef(AST_Typedef* node, UTL_ScopedName* name, AST_Type* base, const char* repoid);
23 
24  bool gen_union(AST_Union* node, UTL_ScopedName* name,
25  const std::vector<AST_UnionBranch*>& branches,
26  AST_Type* discriminator,
27  const char* repoid);
28 
29  static void generate_dheader_code(const std::string& code, bool dheader_required, bool is_ser_func = true);
30 
31  static void gen_field_getValueFromSerialized(AST_Structure* node, const std::string& clazz);
32 
33 private:
34  void gen_union_default(AST_UnionBranch* branch, const std::string& varname);
35 };
36 
37 #endif
static void gen_field_getValueFromSerialized(AST_Structure *node, const std::string &clazz)
bool gen_struct(AST_Structure *node, UTL_ScopedName *name, const std::vector< AST_Field *> &fields, AST_Type::SIZE_TYPE size, const char *repoid)
Christopher Diggins *renamed files *fixing compilation errors *adding Visual C project file *removed make Max Lybbert *removed references to missing and unused as reported by Andy Elvey and Dan Kosecki *resynced with Christopher Diggins s branch as it exists in tree building code is back Christopher Diggins *resynced codebase with Chris s branch *removed tree building code
Definition: CHANGELOG.txt:8
void gen_union_default(AST_UnionBranch *branch, const std::string &varname)
bool gen_enum(AST_Enum *node, UTL_ScopedName *name, const std::vector< AST_EnumVal *> &contents, const char *repoid)
bool gen_union(AST_Union *node, UTL_ScopedName *name, const std::vector< AST_UnionBranch *> &branches, AST_Type *discriminator, const char *repoid)
static void generate_dheader_code(const std::string &code, bool dheader_required, bool is_ser_func=true)
const char *const name
Definition: debug.cpp:60
bool gen_typedef(AST_Typedef *node, UTL_ScopedName *name, AST_Type *base, const char *repoid)