class Hash
taken from activesupport-4.1.7/lib/active_support/core_ext/hash/keys.rb
Public Instance Methods
symbolize_keys()
click to toggle source
Returns a new hash with all keys converted to symbols, as long as they respond to to_sym
.
hash = { 'name' => 'Rob', 'age' => '28' } hash.symbolize_keys # => { name: "Rob", age: "28" }
# File lib/reustyle/hash.rb, line 33 def symbolize_keys transform_keys{ |key| key.to_sym rescue key } end
Also aliased as: to_options
symbolize_keys!()
click to toggle source
Destructively convert all keys to symbols, as long as they respond to to_sym
. Same as symbolize_keys
, but modifies self
.
# File lib/reustyle/hash.rb, line 40 def symbolize_keys! transform_keys!{ |key| key.to_sym rescue key } end
Also aliased as: to_options!
transform_keys() { |key| ... }
click to toggle source
Returns a new hash with all keys converted using the block operation.
hash = { name: 'Rob', age: '28' } hash.transform_keys{ |key| key.to_s.upcase } # => {"NAME"=>"Rob", "AGE"=>"28"}
# File lib/reustyle/hash.rb, line 9 def transform_keys result = {} each_key do |key| result[yield(key)] = self[key] end result end
transform_keys!() { |key| ... }
click to toggle source
Destructively convert all keys using the block operations. Same as transform_keys
but modifies self
.
# File lib/reustyle/hash.rb, line 19 def transform_keys! keys.each do |key| self[yield(key)] = delete(key) end self end