Module: BoolizeAttr::ClassMethods
- Defined in:
- lib/boolize_attr.rb
Instance Method Summary collapse
- #boolize_attr_accessor(*args) ⇒ Object
- #boolize_attr_reader(*args) ⇒ Object
- #boolize_attr_writer(*args) ⇒ Object
Instance Method Details
#boolize_attr_accessor(*args) ⇒ Object
26 27 28 29 |
# File 'lib/boolize_attr.rb', line 26 def boolize_attr_accessor(*args) attr_accessor(*args) boolize_attr_reader(*args) end |
#boolize_attr_reader(*args) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/boolize_attr.rb', line 9 def boolize_attr_reader(*args) args.each do |attr| remove_method attr if defined?(attr) define_method attr do value = if instance_variable_defined?(:"@#{attr}") instance_variable_get(:"@#{attr}") end return false if value.nil? return value if value.is_a?(TrueClass) || value.is_a?(FalseClass) value && value.is_a?(String) && value.to_i == 1 end end end |
#boolize_attr_writer(*args) ⇒ Object
31 32 33 |
# File 'lib/boolize_attr.rb', line 31 def boolize_attr_writer(*args) attr_writer(*args) end |