Sha256: 04391ddd2e99f847ee049408a5998c84aca4d06937a53b7e7834df71c7b0a306
Contents?: true
Size: 604 Bytes
Versions: 215
Compression:
Stored size: 604 Bytes
Contents
module ActiveSupport #:nodoc: module CoreExtensions #:nodoc: module Hash #:nodoc: module Diff # Returns a hash that represents the difference between two hashes. # # Examples: # # {1 => 2}.diff(1 => 2) # => {} # {1 => 2}.diff(1 => 3) # => {1 => 2} # {}.diff(1 => 2) # => {1 => 2} # {1 => 2, 3 => 4}.diff(1 => 2) # => {3 => 4} def diff(h2) self.dup.delete_if { |k, v| h2[k] == v }.merge(h2.dup.delete_if { |k, v| self.has_key?(k) }) end end end end end
Version data entries
215 entries across 182 versions & 27 rubygems