TexasHoldem.Logic.Helpers.HandEvaluator.GetStraightFlushCards C# (CSharp) Метод

GetStraightFlushCards() приватный Метод

private GetStraightFlushCards ( int cardSuitCounts, IEnumerable cards ) : ICollection
cardSuitCounts int
cards IEnumerable
Результат ICollection
        private ICollection<CardType> GetStraightFlushCards(int[] cardSuitCounts, IEnumerable<Card> cards)
        {
            var straightFlushCardTypes = new List<CardType>();
            for (var i = 0; i < cardSuitCounts.Length; i++)
            {
                if (cardSuitCounts[i] < ComparableCards)
                {
                    continue;
                }

                var cardTypeCounts = new int[(int)CardType.Ace + 1];
                foreach (var card in cards)
                {
                    if (card.Suit == (CardSuit)i)
                    {
                        cardTypeCounts[(int)card.Type]++;
                    }
                }

                var bestStraight = this.GetStraightCards(cardTypeCounts);
                if (bestStraight != null)
                {
                    straightFlushCardTypes.AddRange(bestStraight);
                }
            }

            return straightFlushCardTypes;
        }