1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Source: libclone-pp-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
Uploaders: Axel Beckert <abe@debian.org>
Section: perl
Testsuite: autopkgtest-pkg-perl
Priority: optional
Build-Depends: debhelper-compat (= 13)
Build-Depends-Indep: perl
Standards-Version: 4.5.0
Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/libclone-pp-perl
Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/libclone-pp-perl.git
Homepage: https://metacpan.org/release/Clone-PP
Rules-Requires-Root: no
Package: libclone-pp-perl
Architecture: all
Depends: ${misc:Depends},
${perl:Depends}
Multi-Arch: foreign
Description: module to recursively copy Perl datatypes
Clone::PP provides a general-purpose clone function to make deep
copies of Perl data structures. It calls itself recursively to copy
nested hash, array, scalar and reference types, including tied
variables and objects.
.
The clone() function takes a scalar argument to copy. To duplicate
arrays or hashes, pass them in by reference:
.
my $copy = clone(\@array); my @copy = @{ clone(\@array) };
my $copy = clone(\%hash); my %copy = %{ clone(\%hash) };
.
The clone() function also accepts an optional second parameter that
can be used to limit the depth of the copy. If you pass a limit of
0, clone will return the same value you supplied; for a limit of
1, a shallow copy is constructed; for a limit of 2, two layers of
copying are done, and so on.
.
This is a pure-perl implementation. For a faster XS-/C-based
implementation see the libclone-perl package.
|