module DeepDup::CoreExt::Object

Extension for Object class.

Public Instance Methods

deep_dup() click to toggle source

Deep duplicate any object by delegating to DeepDup.deep_dup.

@example

require 'deep_dup/core_ext/object'

dupped = 'chunky'.deep_dup
dupped = ['chunky', [:bacon, { hi: 5 }]].deep_dup
dupped = ['a', :a, 1, { bacon: { chunky: 'yeah' } }].deep_dup
dupped = SomeClass.new.deep_dup

array = [1, 2]
array << array
dupped = array.deep_dup

@return [Object] Dupped object if possible.

# File lib/deep_dup/core_ext/object.rb, line 21
def deep_dup
  DeepDup.deep_dup(self)
end