private void GetSourceFiles(string path, List <string> files) { files.AddRange(GetSourceFilesByExtension(path)); var dirs = DirectoryFunctions.GetDirectories(path) .Select(Path.GetFileName) .Where(s => !DirectoryExclusionFilters.Any(regex => regex.IsMatch(s))); foreach (var dir in dirs) { GetSourceFiles(Path.Combine(path, dir), files); } }
private IEnumerable <string> GetSourceFilesByExtension(string path) => DirectoryFunctions.GetFiles(path).Where(s => Path.GetExtension(s) == ".cs");