internal static ParseException Make(Token foundToken, params TokenType[] expectedTypes) { var lineNumber = foundToken.lineNumber+1; var expectedTypeNames = new List<String> (); foreach (var type in expectedTypes) { expectedTypeNames.Add (type.ToString ()); } string possibleValues = string.Join(",", expectedTypeNames.ToArray()); string message = string.Format("Line {0}:{1}: Expected {2}, but found {3}", lineNumber, foundToken.columnNumber, possibleValues, foundToken.type.ToString() ); var e = new ParseException (message); e.lineNumber = lineNumber; return e; }
internal static ParseException Make(Token mostRecentToken, string message) { var lineNumber = mostRecentToken.lineNumber+1; string theMessage = string.Format ("Line {0}:{1}: {2}", lineNumber, mostRecentToken.columnNumber, message); var e = new ParseException (theMessage); e.lineNumber = lineNumber; return e; }