Module ActiveSupport::CoreExtensions::Hash::ReverseMerge
In: vendor/rails/activesupport/lib/active_support/core_ext/hash/reverse_merge.rb

Allows for reverse merging where its the keys in the calling hash that wins over those in the other_hash. This is particularly useful for initializing an incoming option hash with default values:

  def setup(options = {})
    options.reverse_merge! :size => 25, :velocity => 10
  end

The default :size and :velocity is only set if the options passed in doesn‘t already have those keys set.

Methods

Public Instance methods

Performs the opposite of merge, with the keys and values from the first hash taking precedence over the second.

[Source]

    # File vendor/rails/activesupport/lib/active_support/core_ext/hash/reverse_merge.rb, line 14
14:         def reverse_merge(other_hash)
15:           other_hash.merge(self)
16:         end

Performs the opposite of merge, with the keys and values from the first hash taking precedence over the second. Modifies the receiver in place.

[Source]

    # File vendor/rails/activesupport/lib/active_support/core_ext/hash/reverse_merge.rb, line 20
20:         def reverse_merge!(other_hash)
21:           replace(reverse_merge(other_hash))
22:         end
reverse_update(other_hash)

Alias for reverse_merge!

[Validate]