public override string ToString() { var expMsg = ""; if (Expectations.Any()) { expMsg = " expected " + Expectations.Aggregate((e1, e2) => e1 + " or " + e2); } return(string.Format("Parsing failure: {0};{1} ({2}).", Message, expMsg, FailedInput)); }