lib/refinements/hashes.rb in refinements-7.9.0 vs lib/refinements/hashes.rb in refinements-7.10.0

- old
+ new

@@ -38,10 +38,18 @@ def flatten_keys! prefix: nil, delimiter: "_", cast: :to_sym replace flatten_keys(prefix: prefix, delimiter: delimiter, cast: cast) end + def stringify_keys + reduce({}) { |hash, (key, value)| hash.merge key.to_s => value } + end + + def stringify_keys! + replace stringify_keys + end + def symbolize_keys reduce({}) { |hash, (key, value)| hash.merge key.to_sym => value } end def symbolize_keys! @@ -60,9 +68,17 @@ end end def deep_merge! other replace deep_merge(other) + end + + def deep_stringify_keys + recurse(&:stringify_keys) + end + + def deep_stringify_keys! + replace deep_stringify_keys end def deep_symbolize_keys recurse(&:symbolize_keys) end