Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: Deep Copying of Nested Data-Structures

by Anonymous Monk
on Sep 01, 2003 at 10:03 UTC ( #288108=note: print w/ replies, xml ) Need Help??


in reply to Deep Copying of Nested Data-Structures

perldoc -q copy Found in C:\Perl\lib\pod\perlfaq4.pod How do I print out or copy a recursive data structure? The Data::Dumper module on CPAN (or the 5.005 release of P +erl) is great for printing out data structures. The Storable mo +dule, found on CPAN, provides a function called "dclone" that recursively copies its argument. use Storable qw(dclone); $r2 = dclone($r1); Where $r1 can be a reference to any kind of data structure + you'd like. It will be deeply copied. Because "dclone" takes and returns references, you'd have to add extra punctuation if + you had a hash of arrays that you wanted to copy. %newhash = %{ dclone(\%oldhash) };


Comment on Re: Deep Copying of Nested Data-Structures
Download Code
Re: Re: Deep Copying of Nested Data-Structures
by stefan k (Curate) on Sep 01, 2003 at 10:12 UTC
    I knew there had to be a simple solution. Thanks for pointing that out to me!

    Regards... Stefan
    you begin bashing the string with a +42 regexp of confusion

Re: Re: Deep Copying of Nested Data-Structures
by liz (Monsignor) on Sep 01, 2003 at 10:26 UTC
    ...The Storable module, found on CPAN...

    It should be noted that Storable became part of Perl core in 5.8.0. So you don't need to go to CPAN if you already have 5.8.0.

    I will create a doc patch for 5.8.1 that will note this properly.

    Liz

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://288108]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (9)
As of 2014-11-28 10:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (195 votes), past polls