class Hash

Rails symbolize keys methods for Hash

Public Instance Methods

symbolize_keys() click to toggle source
# File lib/do_snapshot/core_ext/hash.rb, line 28
def symbolize_keys
  transform_keys { |key| key.to_sym rescue key } # rubocop:disable Style/RescueModifier
end
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/do_snapshot/core_ext/hash.rb, line 34
def symbolize_keys!
  transform_keys! { |key| key.to_sym rescue key } # rubocop:disable Style/RescueModifier
end
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/do_snapshot/core_ext/hash.rb, line 11
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/do_snapshot/core_ext/hash.rb, line 21
def transform_keys!
  keys.each do |key|
    self[yield(key)] = delete(key)
  end
  self
end