public Project(IProjectConfig config, IEnumerable<SourceScript> scripts) { if (config == null) throw new ArgumentNullException("config"); if (scripts == null) throw new ArgumentNullException("scripts"); var allScripts = scripts.ToList(); Configuration = config; _nonPriorityScripts = allScripts.ToList(); _allScriptsLookup = allScripts.ToDictionary(s => s.Name.ToLower(), s => s, StringComparer.OrdinalIgnoreCase); _priorityScripts = new List<SourceScript>(); SetupPriorityScripts(); var orderedList = _nonPriorityScripts.OrderBy(x => x.Name).ToList(); var builder = new DependencyListBuilder<string, SourceScript>(orderedList); _nonPriorityScripts = builder.BuildDependencyList(script => script.Name, script => script.GetNeeds(), StringComparer.OrdinalIgnoreCase); }
public Project(IProjectConfig config, IEnumerable <SourceScript> scripts) { if (config == null) { throw new ArgumentNullException("config"); } if (scripts == null) { throw new ArgumentNullException("scripts"); } var allScripts = scripts.ToList(); Configuration = config; _nonPriorityScripts = allScripts.ToList(); _allScriptsLookup = allScripts.ToDictionary(s => s.Name.ToLower(), s => s, StringComparer.OrdinalIgnoreCase); _priorityScripts = new List <SourceScript>(); SetupPriorityScripts(); var orderedList = _nonPriorityScripts.OrderBy(x => x.Name).ToList(); var builder = new DependencyListBuilder <string, SourceScript>(orderedList); _nonPriorityScripts = builder.BuildDependencyList(script => script.Name, script => script.GetNeeds(), StringComparer.OrdinalIgnoreCase); }