Class: Zodiac
- Inherits:
-
Object
- Object
- Zodiac
- Defined in:
- lib/zodiac.rb
Constant Summary collapse
- @@attributes =
[:name, :traits, :physical_traits, :ruling_planet, :compatibility, :dates, :favorites, :scraper2, :symbol, :element, :famous_people, :secret_wish, :hates, :good_traits, :bad_traits, :mental_traits, :sun_dates]
- @@all =
[]
Class Method Summary collapse
- .all ⇒ Object
- .all_dates ⇒ Object
- .all_names ⇒ Object
- .clear ⇒ Object
- .create_new_zodiacs ⇒ Object
- .get_attributes ⇒ Object
-
.look_up_instance(zodiac_sign) ⇒ Object
following method not used in program, but used to develop, debug, and edit using irb.
Instance Method Summary collapse
- #dates ⇒ Object
-
#initialize(attributes) ⇒ Zodiac
constructor
A new instance of Zodiac.
- #traits ⇒ Object
Constructor Details
#initialize(attributes) ⇒ Zodiac
Returns a new instance of Zodiac.
7 8 9 10 |
# File 'lib/zodiac.rb', line 7 def initialize(attributes) attributes.each {|key, value| self.send(("#{key}="), value) if self.methods.include?("#{key}=".to_sym)} @@all << self end |
Class Method Details
.all ⇒ Object
37 38 39 |
# File 'lib/zodiac.rb', line 37 def self.all @@all end |
.all_dates ⇒ Object
20 21 22 |
# File 'lib/zodiac.rb', line 20 def self.all_dates self.all.map {|zodiac| zodiac.sun_dates} end |
.all_names ⇒ Object
24 25 26 |
# File 'lib/zodiac.rb', line 24 def self.all_names self.all.map {|zodiac| zodiac.name } end |
.clear ⇒ Object
41 42 43 |
# File 'lib/zodiac.rb', line 41 def self.clear @@all = [] end |
.create_new_zodiacs ⇒ Object
16 17 18 |
# File 'lib/zodiac.rb', line 16 def self.create_new_zodiacs Scraper.new.scrape end |
.get_attributes ⇒ Object
12 13 14 |
# File 'lib/zodiac.rb', line 12 def self.get_attributes @@attributes end |
.look_up_instance(zodiac_sign) ⇒ Object
following method not used in program, but used to develop, debug, and edit using irb.
29 30 31 32 33 34 35 |
# File 'lib/zodiac.rb', line 29 def self.look_up_instance(zodiac_sign) Zodiac.all.each do |zodiac| if zodiac.name == zodiac_sign return zodiac end end end |
Instance Method Details
#dates ⇒ Object
54 55 56 57 |
# File 'lib/zodiac.rb', line 54 def dates array_dates = self.sun_dates array_dates.join(' - ') end |
#traits ⇒ Object
45 46 47 48 49 50 51 52 |
# File 'lib/zodiac.rb', line 45 def traits trait_array = [] trait_array << self.good_traits trait_array << self.bad_traits trait_array << self.mental_traits trait_list = trait_array.join(". ") trait_list end |