Class: CardDeck::Card
- Inherits:
-
Object
- Object
- CardDeck::Card
- Defined in:
- lib/card_deck.rb
Constant Summary collapse
- NUM =
Legal arguments for parameter num in Card#new.
%w(Ace King Queen Jack Joker) + (2..10).to_a
- SUIT =
Legal arguments for parameter suit in Card#new
%w(Hearts Diamonds Spades Clubs)
Instance Attribute Summary collapse
-
#num ⇒ Object
The card’s number.
-
#suit ⇒ Object
The card’s suit.
Instance Method Summary collapse
-
#initialize(num, suit = nil) ⇒ Card
constructor
Creates a new card.
Constructor Details
#initialize(num, suit = nil) ⇒ Card
Creates a new card. Parameter num is the card’s number. Parameter suit is the card’s suit
15 16 17 18 19 20 21 |
# File 'lib/card_deck.rb', line 15 def initialize(num, suit=nil) unless NUM.include?(num) || SUIT.include?(suit) || suit.nil? raise CardError, 'Illegal argument' else @num, @suit = num, suit end end |
Instance Attribute Details
#num ⇒ Object
The card’s number. Must be Ace, 2, 3, 4, 5, 6, 7, 8, 9, 10, Jack, Queen, King, or Joker
11 12 13 |
# File 'lib/card_deck.rb', line 11 def num @num end |
#suit ⇒ Object
The card’s suit. Must be Spades, Diamonds, Clubs, Hearts, or nil.
13 14 15 |
# File 'lib/card_deck.rb', line 13 def suit @suit end |