lib/phrase/extensions/hash.rb in phrase-0.1.2 vs lib/phrase/extensions/hash.rb in phrase-0.1.3

- old
+ new

@@ -1,34 +1,32 @@ # -*- encoding : utf-8 -*- module Phrase::Extensions::Hash extend ActiveSupport::Concern - module InstanceMethods - def to_shallow_hash - self.inject({}) do |shallow_hash, (key, value)| - if value.is_a?(Hash) - value.to_shallow_hash.each do |sub_key, sub_value| - shallow_hash[[key, sub_key].join(".")] = sub_value - end - else - shallow_hash[key.to_s] = value + def to_shallow_hash + self.inject({}) do |shallow_hash, (key, value)| + if value.is_a?(Hash) + value.to_shallow_hash.each do |sub_key, sub_value| + shallow_hash[[key, sub_key].join(".")] = sub_value end - shallow_hash + else + shallow_hash[key.to_s] = value end + shallow_hash end - - def deep_stringify_keys - inject({}) { |result, (key, value)| - value = value.deep_stringify_keys if value.is_a?(Hash) - unless value.is_a? Proc - result[(key.to_s rescue key) || key] = value - else - result[(key.to_s rescue key) || key] = nil - end - result - } - end + end + + def deep_stringify_keys + inject({}) { |result, (key, value)| + value = value.deep_stringify_keys if value.is_a?(Hash) + unless value.is_a? Proc + result[(key.to_s rescue key) || key] = value + else + result[(key.to_s rescue key) || key] = nil + end + result + } end end Hash.send(:include, Phrase::Extensions::Hash) \ No newline at end of file