Sha256: 7c8c04697e3b049a6e3ad650c29be26722db29180a64ec5469d9f607ef471fde
Contents?: true
Size: 847 Bytes
Versions: 44
Compression:
Stored size: 847 Bytes
Contents
class Hash # Returns a Hash with all keys symbolized def deep_symbolize_keyz! deep_transform_keyz! { |key| key.to_sym rescue key } # rubocop:disable RescueModifier end alias_method :deep_symbolize_keys!, :deep_symbolize_keyz! def deep_transform_keyz!(&block) _deep_transform_keyz_in_object!(self, &block) end alias_method :deep_transform_keys!, :deep_transform_keyz! def _deep_transform_keyz_in_object!(object, &block) case object when Hash object.keys.each do |key| value = object.delete(key) object[yield(key)] = _deep_transform_keyz_in_object!(value, &block) end object when Array object.map! { |e| _deep_transform_keyz_in_object!(e, &block) } else object end end alias_method :_deep_transform_keys_in_object!, :_deep_transform_keyz_in_object! end
Version data entries
44 entries across 44 versions & 1 rubygems