marshal_generator.cpp File Reference

#include "marshal_generator.h"
#include "be_extern.h"
#include "utl_identifier.h"
#include <string>
#include <sstream>
#include <cctype>

Include dependency graph for marshal_generator.cpp:


Typedefs

typedef string(*) CommonFn (const string &name, AST_Type *type, const string &prefix, string &intro)

Enumerations

enum  WrapDirection { WD_OUTPUT, WD_INPUT }

Functions

string wrapPrefix (AST_Type *type, WrapDirection wd)
string getWrapper (const string name, AST_Type *type, WrapDirection wd)
string getMaxSizeExprPrimitive (AST_Type *type)
string getSerializerName (AST_Type *type)
string nameOfSeqHeader (AST_Type *elem)
string streamAndCheck (const string &expr, size_t indent=2)
void gen_sequence (UTL_ScopedName *tdname, AST_Sequence *seq)
void gen_array (UTL_ScopedName *name, AST_Array *arr)
string getArrayForany (const char *prefix, const char *fname, const string &cxx_fld)
string findSizeCommon (const string &name, AST_Type *type, const string &prefix, string &intro)
string streamCommon (const string &name, AST_Type *type, const string &prefix, string &intro)
bool needSyntheticDefault (AST_Type *disc, size_t n_labels)
std::ostream & operator<< (std::ostream &o, const AST_Expression &e)
string getEnumLabel (AST_Expression *label_val, AST_Type *disc)
void generateBranchLabels (AST_UnionBranch *branch, AST_Type *discriminator, size_t &n_labels, bool &has_default)
void generateSwitchBodyForUnion (CommonFn commonFn, const std::vector< AST_UnionBranch * > &branches, AST_Type *discriminator, const char *statementPrefix, const char *namePrefix="")

Typedef Documentation

typedef string(*) CommonFn(const string &name, AST_Type *type, const string &prefix, string &intro) [static]


Enumeration Type Documentation

enum WrapDirection

Enumerator:
WD_OUTPUT 
WD_INPUT 


Function Documentation

string @35::findSizeCommon ( const string &  name,
AST_Type *  type,
const string &  prefix,
string &  intro 
) [static]

void @34::gen_array ( UTL_ScopedName *  name,
AST_Array *  arr 
) [static]

void @34::gen_sequence ( UTL_ScopedName *  tdname,
AST_Sequence *  seq 
) [static]

void @36::generateBranchLabels ( AST_UnionBranch *  branch,
AST_Type *  discriminator,
size_t &  n_labels,
bool &  has_default 
) [static]

void @36::generateSwitchBodyForUnion ( CommonFn  commonFn,
const std::vector< AST_UnionBranch * > &  branches,
AST_Type *  discriminator,
const char *  statementPrefix,
const char *  namePrefix = "" 
) [static]

string @34::getArrayForany ( const char *  prefix,
const char *  fname,
const string &  cxx_fld 
) [static]

string @36::getEnumLabel ( AST_Expression *  label_val,
AST_Type *  disc 
) [static]

string @34::getMaxSizeExprPrimitive ( AST_Type *  type  )  [static]

string @34::getSerializerName ( AST_Type *  type  )  [static]

string @34::getWrapper ( const string  name,
AST_Type *  type,
WrapDirection  wd 
) [static]

string @34::nameOfSeqHeader ( AST_Type *  elem  )  [static]

bool @36::needSyntheticDefault ( AST_Type *  disc,
size_t  n_labels 
) [static]

std::ostream& @36::operator<< ( std::ostream &  o,
const AST_Expression &  e 
) [static]

string @34::streamAndCheck ( const string &  expr,
size_t  indent = 2 
) [static]

string @35::streamCommon ( const string &  name,
AST_Type *  type,
const string &  prefix,
string &  intro 
) [static]

string @34::wrapPrefix ( AST_Type *  type,
WrapDirection  wd 
) [static]


Generated on Tue Aug 17 14:00:58 2010 for OpenDDS by  doxygen 1.4.7