module Declarative::DeepDup
Public Class Methods
call(args)
click to toggle source
# File lib/declarative/deep_dup.rb, line 5 def self.call(args) case args when Array Array[*dup_items(args)] when ::Hash ::Hash[dup_items(args)] else args end end
dup_items(arr)
click to toggle source
# File lib/declarative/deep_dup.rb, line 17 def self.dup_items(arr) arr.to_a.collect { |v| call(v) } end