class Behave::Utils
Public Class Methods
symbolize_keys(hash)
click to toggle source
# File lib/behave.rb, line 158 def self.symbolize_keys(hash) hash.inject({}) do |memo, (k,v)| if v.kind_of? Hash memo[k.to_sym] = symbolize_keys v elsif v.kind_of? Array memo[k.to_sym] = v.map {|x| x.kind_of?(Hash) ? symbolize_keys(x) : x} else memo[k.to_sym] = v end memo end end
symbolize_keys!(hash)
click to toggle source
# File lib/behave.rb, line 171 def self.symbolize_keys!(hash) hash.each_key do |key| val = hash[key] if val.kind_of? Hash symbolize_keys! val elsif val.kind_of? Array val.each {|x| symbolize_keys!(x) if x.kind_of?(Hash) } else hash[key.to_sym] = hash.delete[key] end end end