module ReverseMerge
Ruby on Rails 2.3.18
Since v2.2.3 Last seen in v2.3.18Available in: v2.2.3 v2.3.18
Allows for reverse merging two hashes where the keys in the calling hash take precedence over those in the other_hash. This is particularly useful for initializing an option hash with default values:
def setup(options = {}) options.reverse_merge! :size => 25, :velocity => 10 end
Using merge, the above example would look as follows:
def setup(options = {}) { :size => 25, :velocity => 10 }.merge(options) end
The default :size and :velocity are only set if the options hash passed in doesn’t already have the respective key.