Class: Hash

Inherits:
Object
  • Object
show all
Defined in:
lib/rename_key/ext/hash.rb

Instance Method Summary collapse

Instance Method Details

#rename_key(rename_keys = {}) ⇒ Object

Raises:

  • (TypeError)


2
3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/rename_key/ext/hash.rb', line 2

def rename_key(rename_keys = {})
  raise TypeError, "Type of argument must be hash." unless rename_keys.instance_of?(Hash)

  self.reduce({}) do |res, (key, val)|
    if rename_keys.include?(key)
      res[rename_keys[key]] = val
    else
      res[key] = val
    end

    res
  end
end