package cards const ( // червы Hearts Suit = iota // бубны Diamonds // крести Clubs // пики Spades // значение не определено (корректно только для джокера) Undefined ) // масть карты type Suit byte // полное наименование масти func (s Suit) Name() string { switch s { case Hearts: return "Hearts" case Diamonds: return "Diamonds" case Clubs: return "Clubs" case Spades: return "Spades" default: return "Undefined" } } // краткое наименование масти func (s Suit) NameShort() string { switch s { case Hearts: return "♥" case Diamonds: return "♦" case Clubs: return "♣" case Spades: return "♠" default: return "" } } // проверка, корректно ли объявлена масть func (s Suit) IsValid() bool { return s <= Spades }