AcManager.Controls.ViewModels.RaceGridViewModel.CombinePriorities C# (CSharp) Method

CombinePriorities() private method

private CombinePriorities ( IEnumerable entries ) : IEnumerable
entries IEnumerable
return IEnumerable
        private IEnumerable<RaceGridEntry> CombinePriorities(IEnumerable<RaceGridEntry> entries) {
            var list = entries.ToList();
            var combined = new List<RaceGridEntry>();
            for (var i = 0; i < list.Count; i++) {
                var entry = list[i];
                if (combined.Contains(entry)) continue;

                var priority = 1;
                for (var j = i + 1; j < list.Count; j++) {
                    var next = list[j];
                    if (entry.Same(next)) {
                        priority++;
                        combined.Add(next);
                    }
                }

                entry.CandidatePriority = priority;
                yield return entry;
            }
        }
        #endregion