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