Sha256: 795a14192afd3ba7c82f33b9dbceaae89196af4bf1f52178a272388ad7e477bd
Contents?: true
Size: 1.21 KB
Versions: 5
Compression:
Stored size: 1.21 KB
Contents
module Picky class Categories attr_reader :categories, :category_hash delegate :each, :first, :map, :to => :categories each_delegate :cache, :dump, :each_category, :empty, :index, :reindex, :to => :categories # A list of indexed categories. # def initialize options = {} clear_categories end # Clears both the array of categories and the hash of categories. # def clear_categories @categories = [] @category_hash = {} end # Add the given category to the list of categories. # def << category categories << category category_hash[category.name] = category end # Find a given category in the categories. # def [] category_name category_name = category_name.intern category_hash[category_name] || raise_not_found(category_name) end def raise_not_found category_name raise %Q{Index category "#{category_name}" not found. Possible categories: "#{categories.map(&:name).join('", "')}".} end def to_s categories.join(', ') end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
picky-3.5.4 | lib/picky/categories.rb |
picky-3.5.3 | lib/picky/categories.rb |
picky-3.5.2 | lib/picky/categories.rb |
picky-3.5.1 | lib/picky/categories.rb |
picky-3.5.0 | lib/picky/categories.rb |