Sha256: bebe8ebf0836a922002c68fb69da3096a41890c820c71f5375577e62ac4e7b5a
Contents?: true
Size: 665 Bytes
Versions: 134
Compression:
Stored size: 665 Bytes
Contents
module Rake # ########################################################################## # Mixin for creating easily cloned objects. # module Cloneable # Clone an object by making a new object and setting all the instance # variables to the same values. def dup sibling = self.class.new instance_variables.each do |ivar| value = self.instance_variable_get(ivar) new_value = value.clone rescue value sibling.instance_variable_set(ivar, new_value) end sibling.taint if tainted? sibling end def clone sibling = dup sibling.freeze if frozen? sibling end end end
Version data entries
134 entries across 107 versions & 25 rubygems