public StructParameters ParseParameters(ref int i) { var sp = new StructParameters(); Console.WriteLine("PP:" + Get(i).Text); Log("Checking parameters.", i); AssertTok(i, Token.LeftPara); i++; for (i = i; i < toks.Len; i++) { switch (Get(i).Token) { case Token.Id: var vv = new Var(); vv.Name = Get(i).Text; sp.Pars.Add(vv); break; case Token.Comma: break; case Token.RightPara: return(sp); break; } } return(sp); }
public void WritePars(StructParameters pars) { int pn = 0; foreach (var par in pars.Pars) { C("dynamic " + par.Name); if (par.Init != null) { C(" = "); WriteExpr(par.Init); } pn++; if (pn < pars.Pars.Count) { C(","); } } }