12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package cards
- import "fmt"
- const (
- Jack Number = 11
- Queen Number = 12
- King Number = 13
- Ace Number = 14
- Joker Number = 15
- )
- // порядок карты
- type Number byte
- // конвертация в строку
- func (s Number) String() string {
- return s.NameShort()
- }
- // полное наименование порядка
- func (s Number) Name() string {
- switch s {
- case 2, 3, 4, 5, 6, 7, 8, 9, 10:
- return fmt.Sprint(int(s))
- case Jack:
- return "Jack"
- case Queen:
- return "Queen"
- case King:
- return "King"
- case Ace:
- return "Ace"
- case Joker:
- return "Joker"
- default:
- return "Undefined"
- }
- }
- // краткое наименование порядка
- func (s Number) NameShort() string {
- switch s {
- case 2, 3, 4, 5, 6, 7, 8, 9, 10:
- return fmt.Sprint(int(s))
- case Jack:
- return "J"
- case Queen:
- return "Q"
- case King:
- return "K"
- case Ace:
- return "A"
- case Joker:
- return "JR"
- default:
- return ""
- }
- }
- // проверка, корректно ли объявлен порядок
- func (s Number) IsValid() bool {
- return s >= 2 && s <= Joker
- }
|