module Wardrobe::Plugins::Configurable::ClassMethods
Public Class Methods
extended(base)
click to toggle source
Calls superclass method
# File lib/wardrobe/plugins/configurable.rb, line 14 def self.extended(base) super base.wardrobe_stores do add_store(:configurable_store, ConfigurableStore) end end
Public Instance Methods
configurable(name, blk_name, klass)
click to toggle source
# File lib/wardrobe/plugins/configurable.rb, line 21 def configurable(name, blk_name, klass) wardrobe_stores do @configurable_store = configurable_store.register(name, klass) end define_singleton_method(name) do wardrobe_stores.configurable_store[name] end define_singleton_method(blk_name) do |&blk| wardrobe_stores do @configurable_store = configurable_store.update(name, &blk) end end end