How do I write a writer method for a class variable in Ruby?
- by tepidsam
I'm studying Ruby and my brain just froze.
In the following code, how would I write the class writer method for 'self.total_people'? I'm trying to 'count' the number of instances of the class 'Person'.
   class Person
attr_accessor :name, :age
@@nationalities = ['French', 'American', 'Colombian', 'Japanese', 'Russian', 'Peruvian']
@@current_people = []
@@total_people = 0
def self.nationalities #reader
   @@nationalities
 end
def self.nationalities=(array=[]) #writer
   @@nationalities = array
 end
def self.current_people #reader
   @@current_people
 end
def self.total_people #reader
   @@total_people
 end
def self.total_people #writer
  #-----?????
end
def self.create_with_attributes(name, age)
   person = self.new(name)
   person.age = age
   person.name = name
   return person
 end
def initialize(name="Bob", age=0)
   @name = name
   @age = age
   puts "A new person has been instantiated."
   @@total_people =+ 1
   @@current_people << self
 end