Class: AttrChain::InstanceVariableAccessor
- Defined in:
- lib/util/attr_chain.rb
Overview
Wrapper for Object::instance_variable_get, Object::instance_variable_set and Object::instance_variable_defined?
Instance Method Summary collapse
- #defined?(object, name) ⇒ Boolean
- #edit_name(variable_name) ⇒ Object
- #get(object, name) ⇒ Object
- #set(object, name, value) ⇒ Object
Instance Method Details
#defined?(object, name) ⇒ Boolean
218 219 220 |
# File 'lib/util/attr_chain.rb', line 218 def defined?(object, name) object.instance_variable_defined?(edit_name(name)) end |
#edit_name(variable_name) ⇒ Object
201 202 203 |
# File 'lib/util/attr_chain.rb', line 201 def edit_name(variable_name) "@#{variable_name}".to_sym end |
#get(object, name) ⇒ Object
205 206 207 208 209 210 211 212 |
# File 'lib/util/attr_chain.rb', line 205 def get(object, name) n = edit_name(name) if object.instance_variable_defined?(n) object.instance_variable_get(n) else nil end end |
#set(object, name, value) ⇒ Object
214 215 216 |
# File 'lib/util/attr_chain.rb', line 214 def set(object, name, value) object.instance_variable_set(edit_name(name), value) end |