module AppleCore::Refinements::Hash

Public Instance Methods

deep_strip!() click to toggle source
# File lib/apple_core/refinements/hash.rb, line 9
def deep_strip!
  each do |key, value|
    if value.respond_to?(:strip)
      self[key] = value.strip
    elsif value.respond_to?(:deep_strip!)
      self[key] = value.deep_strip!
    end
  end
end
deep_transform_keys(&block) click to toggle source
# File lib/apple_core/refinements/hash.rb, line 23
def deep_transform_keys(&block)
  Transforms::Enumerable.deep_transform_keys(self, &block)
end
deep_transform_values(&block) click to toggle source
# File lib/apple_core/refinements/hash.rb, line 27
def deep_transform_values(&block)
  Transforms::Enumerable.deep_transform_values(nil, self, &block)
end
deep_underscore_keys() click to toggle source
# File lib/apple_core/refinements/hash.rb, line 19
def deep_underscore_keys
  Transforms::Enumerable.deep_underscore_keys(self)
end
slice(*keys) click to toggle source
# File lib/apple_core/refinements/hash.rb, line 32
def slice(*keys)
  keys.each_with_object({}) do |k, hash|
    hash[k] = self[k] if has_key?(k)
  end
end
slice!(*keys) click to toggle source
# File lib/apple_core/refinements/hash.rb, line 40
def slice!(*keys)
  omit              = slice(*self.keys - keys)

  hash              = slice(*keys)
  hash.default      = default
  hash.default_proc = default_proc if default_proc

  replace(hash)

  omit
end
symbolize_keys() click to toggle source
# File lib/apple_core/refinements/hash.rb, line 53
def symbolize_keys
  result = {}

  each_key do |key|
    result[key.to_sym] = self[key]
  end

  result
end