Class: Hash
Overview
Add full_dup support to the hash class.
Instance Method Summary collapse
-
#full_dup_no_exclusions(progress) ⇒ Object
Do a full_dup with no exclusions.
-
#full_dup_with_exclusions(progress, exclude) ⇒ Object
Do a full_dup with exclusions.
Instance Method Details
#full_dup_no_exclusions(progress) ⇒ Object
Do a full_dup with no exclusions
7 8 9 10 11 12 13 |
# File 'lib/full_dup/hash.rb', line 7 def full_dup_no_exclusions(progress) each_key do |name| value = self[name] value = progress[value.object_id] || value.full_dup(progress) self[name] = value end end |
#full_dup_with_exclusions(progress, exclude) ⇒ Object
Do a full_dup with exclusions
16 17 18 19 20 21 22 23 24 |
# File 'lib/full_dup/hash.rb', line 16 def full_dup_with_exclusions(progress, exclude) each_key do |name| unless exclude.include?(name) value = self[name] value = progress[value.object_id] || value.full_dup(progress) self[name] = value end end end |