Sha256: e3fedbbfe7e7e86273352b6224cc320bc5b8ae772ba765122d758fd4debde575
Contents?: true
Size: 818 Bytes
Versions: 1
Compression:
Stored size: 818 Bytes
Contents
module EldarScrolls module Scrolls @@categories = {} @@list = {} def self.add(scroll) EldarScrolls::Scrolls.const_set ActiveSupport::Inflector.camelize(scroll.key), scroll @@list[scroll.key] = scroll (@@categories[scroll.category.to_s] ||= []) << scroll.key @@categories[scroll.category.to_s].uniq! scroll end def self.[](key) @@list[key.to_s] end def self.list @@list.keys.sort end def self.list_classes @@list.values.sort_by{|c| c.key} end def self.categories @@categories.keys.sort end def self.for(category) (@@categories[category.to_s] || []).sort end def self.remove_from_category(category, scroll) (@@categories[category.to_s] ||= []).delete(scroll.key) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
eldarscrolls-0.7.0 | lib/eldarscrolls/scrolls.rb |