|
Public Member Functions |
| | CppExpressionGenerator (ostream &out, NEDSymbolTable *symboltable) |
| | ~CppExpressionGenerator () |
| void | collectExpressions (NEDElement *node) |
| void | generateExpressionClasses () |
| void | generateExpressionUsage (ExpressionNode *expr, const char *indent) |
Protected Types |
| typedef std::vector< NEDElement * > | NEDElementVector |
typedef std::map< ExpressionNode *,
ExpressionInfo > | NEDExpressionMap |
| enum | { MODE_INLINE_EXPRESSION,
MODE_EXPRESSION_CLASS
} |
Protected Member Functions |
| void | doExtractArgs (ExpressionInfo &info, NEDElement *node) |
| void | doCollectExpressions (NEDElement *node, NEDElement *currentSubmodTypeDecl) |
| void | collectExpressionInfo (ExpressionNode *expr, NEDElement *currentSubmodTypeDecl) |
| void | generateExpressionClass (ExpressionInfo &info) |
| const char * | getTypeForArg (NEDElement *node) |
| const char * | getNameForArg (NEDElement *node) |
| void | doValueForArg (NEDElement *node) |
| void | doValueForCachedVar (NEDElement *node) |
| void | generateChildren (NEDElement *node, const char *indent, int mode) |
| void | generateItem (NEDElement *node, const char *indent, int mode) |
| void | doOperator (OperatorNode *node, const char *indent, int mode) |
| void | doFunction (FunctionNode *node, const char *indent, int mode) |
| void | doParamref (ParamRefNode *node, const char *indent, int mode) |
| void | doIdent (IdentNode *node, const char *indent, int mode) |
| void | doConst (ConstNode *node, const char *indent, int mode) |
| void | doExpression (ExpressionNode *node, const char *indent, int mode) |
| bool | needsExpressionClass (ExpressionNode *expr, NEDElement *currentSubmodTypeDecl) |
Protected Attributes |
| ostream & | out |
| NEDSymbolTable * | symboltable |
| NEDExpressionMap | exprMap |
Static Protected Attributes |
| int | count |