public IEnumerable <string> FindFiles(string directory, FileSet searchSpecification) { var excluded = searchSpecification.ExcludedFilesFor(directory).ToArray(); var files = searchSpecification.IncludedFilesFor(directory).ToList(); files.RemoveAll(s => excluded.Contains(s)); return(files); }