• Home
  • Raw
  • Download

Lines Matching refs:ExprAST

105 class ExprAST {  class
107 virtual ~ExprAST() {} in ~ExprAST()
112 class NumberExprAST : public ExprAST {
120 class VariableExprAST : public ExprAST {
128 class UnaryExprAST : public ExprAST {
130 ExprAST *Operand;
132 UnaryExprAST(char opcode, ExprAST *operand) in UnaryExprAST()
138 class BinaryExprAST : public ExprAST {
140 ExprAST *LHS, *RHS;
142 BinaryExprAST(char op, ExprAST *lhs, ExprAST *rhs) in BinaryExprAST()
148 class CallExprAST : public ExprAST {
150 std::vector<ExprAST*> Args;
152 CallExprAST(const std::string &callee, std::vector<ExprAST*> &args) in CallExprAST()
158 class IfExprAST : public ExprAST {
159 ExprAST *Cond, *Then, *Else;
161 IfExprAST(ExprAST *cond, ExprAST *then, ExprAST *_else) in IfExprAST()
167 class ForExprAST : public ExprAST {
169 ExprAST *Start, *End, *Step, *Body;
171 ForExprAST(const std::string &varname, ExprAST *start, ExprAST *end, in ForExprAST()
172 ExprAST *step, ExprAST *body) in ForExprAST()
206 ExprAST *Body;
208 FunctionAST(PrototypeAST *proto, ExprAST *body) in FunctionAST()
242 ExprAST *Error(const char *Str) { fprintf(stderr, "Error: %s\n", Str);return 0;} in Error()
246 static ExprAST *ParseExpression();
251 static ExprAST *ParseIdentifierExpr() { in ParseIdentifierExpr()
261 std::vector<ExprAST*> Args; in ParseIdentifierExpr()
264 ExprAST *Arg = ParseExpression(); in ParseIdentifierExpr()
283 static ExprAST *ParseNumberExpr() { in ParseNumberExpr()
284 ExprAST *Result = new NumberExprAST(NumVal); in ParseNumberExpr()
290 static ExprAST *ParseParenExpr() { in ParseParenExpr()
292 ExprAST *V = ParseExpression(); in ParseParenExpr()
302 static ExprAST *ParseIfExpr() { in ParseIfExpr()
306 ExprAST *Cond = ParseExpression(); in ParseIfExpr()
313 ExprAST *Then = ParseExpression(); in ParseIfExpr()
321 ExprAST *Else = ParseExpression(); in ParseIfExpr()
328 static ExprAST *ParseForExpr() { in ParseForExpr()
342 ExprAST *Start = ParseExpression(); in ParseForExpr()
348 ExprAST *End = ParseExpression(); in ParseForExpr()
352 ExprAST *Step = 0; in ParseForExpr()
363 ExprAST *Body = ParseExpression(); in ParseForExpr()
375 static ExprAST *ParsePrimary() { in ParsePrimary()
389 static ExprAST *ParseUnary() { in ParseUnary()
397 if (ExprAST *Operand = ParseUnary()) in ParseUnary()
404 static ExprAST *ParseBinOpRHS(int ExprPrec, ExprAST *LHS) { in ParseBinOpRHS()
419 ExprAST *RHS = ParseUnary(); in ParseBinOpRHS()
438 static ExprAST *ParseExpression() { in ParseExpression()
439 ExprAST *LHS = ParseUnary(); in ParseExpression()
516 if (ExprAST *E = ParseExpression()) in ParseDefinition()
523 if (ExprAST *E = ParseExpression()) { in ParseTopLevelExpr()