attr_enum
A class macro to define an enumeration variable. See en.wikipedia.org/wiki/Enumerated_type for more information.
Usage
class Card
attr_enum :suit, %w( clubs hearts diamonds spades )
end
c = Card.new
c.suit = 'clubs'
c.suit
=> 'clubs'
c.suit = 'jack'
=> EnumeratedTypeError, Card#suit must be one of clubs, hearts, diamonds, spades.
Installation
From rubyforge:
gem install attr_enum
From github:
gem install kmcd-attr_enum --source http://gems.github.com