public MatchesNotFoundException(string message, IReadOnlyList<Match> matches, Exception inner) : base(string.Join(Environment.NewLine, message, string.Join(Environment.NewLine, matches.Select(match => "Match: " + match.Content + " " + match.Range + " not found."))), inner) { Contract.Requires(matches != null); this.Matches = matches; }