class Card

Constants

VALID_SUITS
VALID_VALUES

Attributes

suit[RW]
value[RW]

Public Class Methods

new(suit, value) click to toggle source
# File lib/card.rb, line 37
def initialize(suit, value)
  raise "Invalid Card" unless VALID_SUITS.include?(suit)
  @suit = suit
  @value = value
end

Private Class Methods

valid_suits() click to toggle source
# File lib/card.rb, line 99
def self.valid_suits
  VALID_SUITS
end
valid_values() click to toggle source
# File lib/card.rb, line 103
def self.valid_values
  VALID_VALUES
end

Public Instance Methods

<=>(card) click to toggle source
# File lib/card.rb, line 49
def <=>(card)
  @value = :"7E" if is_7_e?
  card.value = :"7E" if card.is_7_e?


  @value = :"7O" if is_7_o?
  card.value = :"7O" if card.is_7_o?


  @value = :"1C" if is_1_c?
  card.value = :"1C" if card.is_1_c?

  @value = :"1O" if is_1_o?
  card.value = :"1O" if card.is_1_o?

  if value == card.value
    if suit.to_value > card.suit.to_value
      return 1
    else 
      return -1
    end
  end
  if value.to_value > card.value.to_value
    return 1
  else
    return -1
  end
end
is_1_c?() click to toggle source
# File lib/card.rb, line 87
def is_1_c?
  (value == :"1" && suit == :"C") or (value == :"1C")
end
is_1_o?() click to toggle source
# File lib/card.rb, line 91
def is_1_o?
  (value == :"1" && suit == :"O") or (value == :"1O")
end
is_7_e?() click to toggle source
# File lib/card.rb, line 79
def is_7_e?
  value == :"7" && suit == :"E"
end
is_7_o?() click to toggle source
# File lib/card.rb, line 83
def is_7_o?
  value == :"7" && suit == :"O"
end
to_s() click to toggle source
# File lib/card.rb, line 45
def to_s
  self.suit.to_s + " "  +  self.value.to_s
end