You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
eon/parser/parser.h

24 lines
1.1 KiB

5 years ago
typedef struct assignment assignment;
typedef struct expression expression;
typedef struct print print;
typedef struct logic logic;
typedef struct nodeInfo nodeInfo;
nodeInfo *node(int opperation, char opper, char var, int l, int r);
nodeInfo *createFunctionCall(char *_name);
nodeInfo *createFunction(char *_name, nodeInfo *_stmts);
nodeInfo *createFunctionExpression(int lvalue, int rvalue, char opper);
nodeInfo *createVarAssignmentString(char *name, char *string);
nodeInfo *createVarAssignmentInt(char *name, int number);
nodeInfo *createVarAssignmentChar(char *name, char Char);
nodeInfo *createVarAssignmentDouble(char *name, double Double);
nodeInfo *createPrintVarNode(char *varname);
//TODO this doesnt belong here, make another folder/file for print
nodeInfo *createPrintStatement(int opperation, int value, char *string);
//TODO this doesnt belong here, make another folder/file for logic
nodeInfo *createLogic(int opperationm, int expr, nodeInfo *if_true, nodeInfo *else_false);
nodeInfo *createCompoundStatement(nodeInfo *n);
void ex(nodeInfo *n);
int evalExpression(expression *n);