dds_generator Class Reference

#include <dds_generator.h>

Inheritance diagram for dds_generator:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual ~dds_generator ()=0
virtual bool do_included_files () const
virtual void gen_prologue ()
virtual void gen_epilogue ()
virtual bool gen_const (UTL_ScopedName *, bool, AST_Constant *)
virtual bool gen_enum (AST_Enum *, UTL_ScopedName *, const std::vector< AST_EnumVal * > &, const char *)
virtual bool gen_struct (AST_Structure *node, UTL_ScopedName *name, const std::vector< AST_Field * > &fields, AST_Type::SIZE_TYPE size, const char *repoid)=0
virtual bool gen_struct_fwd (UTL_ScopedName *, AST_Type::SIZE_TYPE)
virtual bool gen_typedef (AST_Typedef *node, UTL_ScopedName *name, AST_Type *base, const char *repoid)=0
virtual bool gen_interf (AST_Interface *, UTL_ScopedName *, bool, const std::vector< AST_Interface * > &, const std::vector< AST_Interface * > &, const std::vector< AST_Attribute * > &, const std::vector< AST_Operation * > &, const char *)
virtual bool gen_interf_fwd (UTL_ScopedName *)
virtual bool gen_native (AST_Native *, UTL_ScopedName *, const char *)
virtual bool gen_union (AST_Union *node, UTL_ScopedName *name, const std::vector< AST_UnionBranch * > &branches, AST_Type *discriminator, const char *repoid)=0
virtual bool gen_union_fwd (AST_UnionFwd *, UTL_ScopedName *, AST_Type::SIZE_TYPE)

Static Public Member Functions

static std::string scoped_helper (UTL_ScopedName *sn, const char *sep)
static std::string module_scope_helper (UTL_ScopedName *sn, const char *sep)

Detailed Description

Definition at line 30 of file dds_generator.h.


Constructor & Destructor Documentation

dds_generator::~dds_generator (  )  [pure virtual]

Definition at line 14 of file dds_generator.cpp.

00014 {}


Member Function Documentation

virtual bool dds_generator::do_included_files (  )  const [inline, virtual]

Reimplemented in itl_generator.

Definition at line 34 of file dds_generator.h.

00034 { return false; }

virtual bool dds_generator::gen_const ( UTL_ScopedName *  ,
bool  ,
AST_Constant *   
) [inline, virtual]

Reimplemented in composite_generator, and langmap_generator.

Definition at line 40 of file dds_generator.h.

00043   { return true; }

virtual bool dds_generator::gen_enum ( AST_Enum *  ,
UTL_ScopedName *  ,
const std::vector< AST_EnumVal * > &  ,
const char *   
) [inline, virtual]

Reimplemented in composite_generator, itl_generator, langmap_generator, marshal_generator, metaclass_generator, v8_generator, and wireshark_generator.

Definition at line 45 of file dds_generator.h.

00048   { return true; }

virtual void dds_generator::gen_epilogue (  )  [inline, virtual]

Reimplemented in composite_generator, and itl_generator.

Definition at line 38 of file dds_generator.h.

00038 {}

virtual bool dds_generator::gen_interf ( AST_Interface *  ,
UTL_ScopedName *  ,
bool  ,
const std::vector< AST_Interface * > &  ,
const std::vector< AST_Interface * > &  ,
const std::vector< AST_Attribute * > &  ,
const std::vector< AST_Operation * > &  ,
const char *   
) [inline, virtual]

Reimplemented in composite_generator.

Definition at line 62 of file dds_generator.h.

00068   { return true; }

virtual bool dds_generator::gen_interf_fwd ( UTL_ScopedName *   )  [inline, virtual]

Reimplemented in composite_generator, and langmap_generator.

Definition at line 70 of file dds_generator.h.

00071   { return true; }

virtual bool dds_generator::gen_native ( AST_Native *  ,
UTL_ScopedName *  ,
const char *   
) [inline, virtual]

Reimplemented in composite_generator.

Definition at line 73 of file dds_generator.h.

00074   { return true; }

virtual void dds_generator::gen_prologue (  )  [inline, virtual]

Reimplemented in composite_generator, and itl_generator.

Definition at line 36 of file dds_generator.h.

00036 {}

virtual bool dds_generator::gen_struct ( AST_Structure *  node,
UTL_ScopedName *  name,
const std::vector< AST_Field * > &  fields,
AST_Type::SIZE_TYPE  size,
const char *  repoid 
) [pure virtual]

Implemented in composite_generator, itl_generator, keys_generator, langmap_generator, marshal_generator, metaclass_generator, ts_generator, v8_generator, and wireshark_generator.

virtual bool dds_generator::gen_struct_fwd ( UTL_ScopedName *  ,
AST_Type::SIZE_TYPE   
) [inline, virtual]

Reimplemented in composite_generator, and langmap_generator.

Definition at line 55 of file dds_generator.h.

00057   { return true; }

virtual bool dds_generator::gen_typedef ( AST_Typedef *  node,
UTL_ScopedName *  name,
AST_Type *  base,
const char *  repoid 
) [pure virtual]

Implemented in composite_generator, itl_generator, keys_generator, langmap_generator, marshal_generator, metaclass_generator, ts_generator, v8_generator, and wireshark_generator.

virtual bool dds_generator::gen_union ( AST_Union *  node,
UTL_ScopedName *  name,
const std::vector< AST_UnionBranch * > &  branches,
AST_Type *  discriminator,
const char *  repoid 
) [pure virtual]

Implemented in composite_generator, itl_generator, keys_generator, langmap_generator, marshal_generator, metaclass_generator, ts_generator, v8_generator, and wireshark_generator.

virtual bool dds_generator::gen_union_fwd ( AST_UnionFwd *  ,
UTL_ScopedName *  ,
AST_Type::SIZE_TYPE   
) [inline, virtual]

Reimplemented in composite_generator, and langmap_generator.

Definition at line 81 of file dds_generator.h.

00083   { return true; }

string dds_generator::module_scope_helper ( UTL_ScopedName *  sn,
const char *  sep 
) [static]

Definition at line 33 of file dds_generator.cpp.

Referenced by module_scope().

00034 {
00035   string sname;
00036 
00037   for (; sn; sn = static_cast<UTL_ScopedName*>(sn->tail())) {
00038     if (sn->tail() != 0) {
00039       if (sn->head()->escaped())
00040         sname += "_";
00041 
00042       sname += sn->head()->get_string();
00043 
00044       if (sname != "" && sn->tail())
00045         sname += sep;
00046     }
00047   }
00048 
00049   return sname;
00050 }

string dds_generator::scoped_helper ( UTL_ScopedName *  sn,
const char *  sep 
) [static]

Definition at line 16 of file dds_generator.cpp.

Referenced by gen_copyto(), metaclass_generator::gen_enum(), gen_field_getValue(), keys_generator::gen_struct(), face_ts_generator::generate(), scoped(), and wireshark_generator::write_common().

00017 {
00018   string sname;
00019 
00020   for (; sn; sn = static_cast<UTL_ScopedName*>(sn->tail())) {
00021     if (sn->head()->escaped())
00022       sname += "_";
00023 
00024     sname += sn->head()->get_string();
00025 
00026     if (sname != "" && sn->tail())
00027       sname += sep;
00028   }
00029 
00030   return sname;
00031 }


The documentation for this class was generated from the following files:
Generated on Fri Feb 12 20:05:56 2016 for OpenDDS by  doxygen 1.4.7