Ruby dup/clone recursively

前端 未结 5 1658
猫巷女王i
猫巷女王i 2020-12-10 01:30

I have a hash like:

h = {\'name\' => \'sayuj\', 
     \'age\' => 22, 
     \'project\' => {\'project_name\' => \'abc\', 
                   \'dur         


        
5条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-10 01:52

    Another alternative is to use the full_dup gem (full disclosure: I am the author of that gem) that handles arrays, hashes, structs, and is extendable to user defined classes.

    To use:

    require 'full_dup'
    # Other code omitted ...
    d = h.full_dup
    

    Also note that full_dup handles complex data relationships including those with loops or recursion.

提交回复
热议问题