Пример #1
0
        public Deck Remove(FaceOrNumber faceOrNumber)
        {
            var b = ImmutableList.CreateBuilder <Card>();

            b.AddRange(Cards);

            var removeThese = b.Where(x => x.FaceOrNumber == faceOrNumber).ToList();

            foreach (var c in removeThese)
            {
                b.Remove(c);
            }

            return(new Deck(this, b.ToImmutable()));
        }
Пример #2
0
        public Deck Add(FaceOrNumber faceOrNumber, params Suit[] suits)
        {
            var b = ImmutableList.CreateBuilder <Card>();

            b.AddRange(Cards);

            foreach (var s in suits)
            {
                var c = new Card {
                    FaceOrNumber = faceOrNumber, Suit = s
                };
                b.Add(c);
            }

            return(new Deck(this, b.ToImmutable()));
        }