Sha256: adb131dc35efdd2bb0002f41c24f7ba5fa20b2ee01edebd93decf6429e8ae805

Contents?: true

Size: 462 Bytes

Versions: 6

Compression:

Stored size: 462 Bytes

Contents

class Hash
  def transform_keys
    return to_enum(:transform_keys) { size } unless block_given?
    h = {}
    each do |key, value|
      h[yield key] = value
    end
    h
  end unless method_defined? :transform_keys

  def transform_keys!
    return enum_for(:transform_keys!) { size } unless block_given?
    merge!({}) if frozen?
    keys.each do |key|
      self[yield(key)] = delete(key)
    end
    self
  end unless method_defined? :transform_keys!
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
backports-3.18.2 lib/backports/2.5.0/hash/transform_keys.rb
backports-3.18.1 lib/backports/2.5.0/hash/transform_keys.rb
backports-3.18.0 lib/backports/2.5.0/hash/transform_keys.rb
backports-3.17.2 lib/backports/2.5.0/hash/transform_keys.rb
backports-3.17.1 lib/backports/2.5.0/hash/transform_keys.rb
backports-3.17.0 lib/backports/2.5.0/hash/transform_keys.rb