Method: Hash#booleanize!
- Defined in:
- lib/morpheus/ext/hash.rb
#booleanize!(true_values = ['true','on'], false_values = ['false','off']) ⇒ Object
convert recognizable strings to booleans
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/morpheus/ext/hash.rb', line 65 def booleanize!(true_values=['true','on'], false_values=['false','off']) self.each_pair do |k, v| if v.is_a?(Hash) self[k].booleanize! elsif v.is_a?(Array) self[k].each do |it| if it.is_a?(Hash) it.booleanize! elsif self[k] == nil || self[k] == '' # meh, preserve 'empty' array elements end end else if true_values.include?(v) self[k] = true elsif false_values.include?(v) self[k] = false end end end self end |