Module: Collectable::ClassMethods
- Defined in:
- lib/collectable.rb
Instance Method Summary collapse
- #characteristic(characteristic_name) ⇒ Object
- #characteristics ⇒ Object
- #collected(sort_field = :name) ⇒ Object
- #name ⇒ Object
- #value ⇒ Object
Instance Method Details
#characteristic(characteristic_name) ⇒ Object
21 22 23 24 |
# File 'lib/collectable.rb', line 21 def characteristic(characteristic_name) characteristics.push(characteristic_name.to_s.downcase) characteristics.uniq! end |
#characteristics ⇒ Object
17 18 19 |
# File 'lib/collectable.rb', line 17 def characteristics @characteristics ||= [] end |
#collected(sort_field = :name) ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/collectable.rb', line 26 def collected(sort_field = :name) characteristics.each_with_index.map {|name, index| OpenStruct.new(name: name, value: index) }.sort {|a,b| a.send(sort_field) <=> b.send(sort_field) } end |
#name ⇒ Object
13 14 15 |
# File 'lib/collectable.rb', line 13 def name :name end |
#value ⇒ Object
9 10 11 |
# File 'lib/collectable.rb', line 9 def value :value end |