blob: ac67471232f2498cbbad2885a5824c33eff28b27 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
module Rake
# ##########################################################################
# Mixin for creating easily cloned objects.
#
module Cloneable
# The hook that invoked by 'clone' and 'dup' methods.
def initialize_copy(source)
super
source.instance_variables.each do |var|
src_value = source.instance_variable_get(var)
value = src_value.clone rescue src_value
instance_variable_set(var, value)
end
end
end
end
|