상속: Statement
예제 #1
0
 public virtual void Visit(Call node)
 {
 }
 void CallProc(out Statement callStmt)
 {
     Expression exp;
     List<Expression> expressions = new List<Expression>();
     Expect(25);
     Token callToken = t;
     Token exprToken = null;
     Expect(1);
     string proc = t.val;
     Expect(6);
     if (StartOf(2)) {
     exprToken = la;
     Expr(out exp);
     expressions.Add(exp); ExpectIntArg(exp, exprToken);
     while (la.kind == 12) {
         Get();
         exprToken = la;
         Expr(out exp);
         expressions.Add(exp); ExpectIntArg(exp, exprToken);
     }
     }
     Expect(9);
     callStmt = new Call(proc, expressions, callToken, exprToken);
 }