Module: Glitter::Configurable::ClassMethods
- Defined in:
- lib/glitter/configurable.rb
Instance Method Summary collapse
- #attr_configurable(*attrs) ⇒ Object
- #attr_overloaded(*attrs) ⇒ Object
- #configure(*args, &block) ⇒ Object
Instance Method Details
#attr_configurable(*attrs) ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/glitter/configurable.rb', line 24 def attr_configurable(*attrs) attrs.each do |attr| class_eval %( attr_writer :#{attr} attr_overloaded :#{attr}) end end |
#attr_overloaded(*attrs) ⇒ Object
32 33 34 35 36 37 38 39 |
# File 'lib/glitter/configurable.rb', line 32 def attr_overloaded(*attrs) attrs.each do |attr| class_eval(%{ def #{attr}(val=nil) val ? instance_variable_set('@#{attr}', val) : instance_variable_get('@#{attr}') end}) end end |
#configure(*args, &block) ⇒ Object
41 42 43 |
# File 'lib/glitter/configurable.rb', line 41 def configure(*args, &block) new.configure(*args, &block) end |