While.Parsing.Parser.CallProc C# (CSharp) Method

CallProc() public method

public CallProc ( Statement &callStmt ) : void
callStmt While.AST.Statements.Statement
return void
        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);
        }