Class: HashDelegate::Accessor
- Inherits:
-
Struct
- Object
- Struct
- HashDelegate::Accessor
- Defined in:
- lib/hash_delegate/accessor.rb
Instance Attribute Summary collapse
-
#klass ⇒ Object
Returns the value of attribute klass.
Instance Method Summary collapse
Instance Attribute Details
#klass ⇒ Object
Returns the value of attribute klass
2 3 4 |
# File 'lib/hash_delegate/accessor.rb', line 2 def klass @klass end |
Instance Method Details
#define_getter(key, hash) ⇒ Object
3 4 5 6 7 8 |
# File 'lib/hash_delegate/accessor.rb', line 3 def define_getter(key, hash) define_delegation key do data = self.send(hash) || {} data[key.to_s] || data[key.to_sym] end end |
#define_setter(key, hash) ⇒ Object
10 11 12 13 14 15 |
# File 'lib/hash_delegate/accessor.rb', line 10 def define_setter(key, hash) define_delegation "#{key}=" do |value| data = self.send(hash) || self.send("#{hash}=", {}) data[key.to_s] = value end end |