Module: Scam::ClassMethods

Defined in:
lib/scam.rb

Instance Method Summary collapse

Instance Method Details

#allObject



13
14
15
# File 'lib/scam.rb', line 13

def all
  instances.sort_by { |i| i.send(sorted_by) }
end

#create(attrs = {}) ⇒ Object



23
24
25
# File 'lib/scam.rb', line 23

def create(attrs={})
  new(attrs).tap { |i| instances << i }
end

#eachObject



27
28
29
# File 'lib/scam.rb', line 27

def each
  instances.each { |i| yield(i) }
end

#find(id) ⇒ Object Also known as: []



31
32
33
# File 'lib/scam.rb', line 31

def find(id)
  detect { |i| i.id == id.to_i }
end

#sorted_by(attribute = nil) ⇒ Object



17
18
19
20
21
# File 'lib/scam.rb', line 17

def sorted_by(attribute=nil)
  @sorted_by = attribute unless attribute.nil?
  @sorted_by = :id if @sorted_by.nil?
  @sorted_by
end