impl cards

This commit is contained in:
Bel LaPointe
2021-03-30 20:29:49 -05:00
parent 9efb30ae3e
commit a26c1a0043
3 changed files with 66 additions and 21 deletions

View File

@@ -5,8 +5,10 @@ import (
)
type Hand struct {
Public []Card
Private []Card
Public []Card
Private []Card
ReversePublic []Card
ReversePrivate []Card
}
func (hand *Hand) Push(card Card) {
@@ -17,12 +19,12 @@ func (hand *Hand) Push(card Card) {
}
func (hand Hand) Len() int {
return len(hand.Public) + len(hand.Private)
return len(hand.Public) + len(hand.Private) + len(hand.ReversePublic) + len(hand.ReversePrivate)
}
func (hand Hand) AllCards() []Card {
allcards := make([]Card, 0, len(hand.Public)+len(hand.Private))
for _, cards := range [][]Card{hand.Public, hand.Private} {
allcards := make([]Card, 0, hand.Len())
for _, cards := range [][]Card{hand.Public, hand.Private, hand.ReversePublic, hand.ReversePrivate} {
allcards = append(allcards, cards...)
}
return allcards