/// <summary> /// Parser for Arguments /// </summary> /// <param name="markup">Markup to add arguments to</param> /// <returns>Parsed arguments</returns> public void ParseArguments(Markup markup) { //Skip ( character NextToken("(", "(Argument, Argument)", '('); while (TokenStream.HasNext()) { //Parse argument(s) if (TokenStream.Peek(1).GetValue().ToString() == ")") { //No arguments left, so break break; } else if (TokenStream.Peek(1).GetValue().ToString() == ",") { //Second argument //Skip comma NextToken(",", "Argument, Argument", ','); } //Parse argument markup.AddArgument(ParseArgument()); } //Skip ) character NextToken(")", "(Argument, Argument)", ')'); }