module Rake::Cloneable
########################################################################## Mixin for creating easily cloned objects.
Public Instance Methods
clone()
click to toggle source
# File lib/rake/cloneable.rb, line 19 def clone sibling = dup sibling.freeze if frozen? sibling end
dup()
click to toggle source
Clone an object by making a new object and setting all the instance variables to the same values.
# File lib/rake/cloneable.rb, line 8 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