instance method Hash#transform_keys!

transform_keys! {|key| ... } -> self[permalink][rdoc][edit]
transform_keys!(hash) -> self
transform_keys! -> Enumerator

すべての値に対してブロックを呼び出した結果でハッシュのキーを変更します。値は変化しません。

[PARAM] hash:
置き換え前のキーから置き換え後のキーへのハッシュを指定します。
[RETURN]
transform_keys! は常に self を返します。ブロックが与えられなかった場合は、Enumerator オブジェクトを返します。


h = { a: 1, b: 2, c: 3 }
h.transform_keys! {|k| k.to_s }   # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys!(&:to_sym)       # => {:a=>1, :b=>2, :c=>3}
h.transform_keys!(a: "a", d: "d") # => {"a"=>1, :b=>2, :c=>3}
h.transform_keys!.with_index {|k, i| "#{k}.#{i}" }
                                  # => {"a.0"=>1, "b.1"=>2, "c.2"=>3}

[SEE_ALSO] Hash#transform_keys

[SEE_ALSO] Hash#transform_values

[SEE_ALSO] Hash#transform_values!