Exemplo n.º 1
0
        public StructCallPars ParseCallPars(ref int i)
        {
            var cp = new StructCallPars();

            AssertTok(i, Token.LeftPara);
            if (Get(i + 1).Token == Token.RightPara)
            {
                return(cp);
            }

            i++;

            for (i = i; i < toks.Len; i++)
            {
                var ct = Get(i);
                if (ct.Text == ",")
                {
                    continue;
                }
                if (Get(i).Token == Token.RightPara)
                {
                    return(cp);
                }
                var exp = ParseExp(ref i);
                i--;
                cp.Pars.Add(exp);
            }
            return(cp);
        }
Exemplo n.º 2
0
        public void WriteCallPars(StructCallPars pars)
        {
            int pi = 0;

            foreach (var p in pars.Pars)
            {
                WriteExpr(p);
                pi++;
                if (pi < pars.Pars.Count)
                {
                    C(",");
                }
            }
        }