|
Packit |
14c646 |
Storable 3.05c
|
|
Packit |
14c646 |
Copyright (c) 1995-2000, Raphael Manfredi
|
|
Packit |
14c646 |
Copyright (c) 2001-2004, Larry Wall
|
|
Packit |
14c646 |
Copyright (c) 2016,2017 cPanel Inc
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
------------------------------------------------------------------------
|
|
Packit |
14c646 |
This program is free software; you can redistribute it and/or modify
|
|
Packit |
14c646 |
it under the same terms as Perl 5 itself.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
This program is distributed in the hope that it will be useful,
|
|
Packit |
14c646 |
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
14c646 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
Packit |
14c646 |
Perl 5 License schemes for more details.
|
|
Packit |
14c646 |
------------------------------------------------------------------------
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
+=======================================================================
|
|
Packit |
14c646 |
| Storable is distributed as a module, but is also part of the official
|
|
Packit |
14c646 |
| Perl core distribution, as of perl 5.8.
|
|
Packit |
14c646 |
| Maintenance is partially done by the perl5-porters, and for cperl by cPanel.
|
|
Packit |
14c646 |
| We thank Raphael Manfredi for providing us with this very useful module.
|
|
Packit |
14c646 |
+=======================================================================
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
The Storable extension brings persistence to your data.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
You may recursively store to disk any data structure, no matter how
|
|
Packit |
14c646 |
complex and circular it is, provided it contains only SCALAR, ARRAY,
|
|
Packit |
14c646 |
HASH (possibly tied) and references (possibly blessed) to those items.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
At a later stage, or in another program, you may retrieve data from
|
|
Packit |
14c646 |
the stored file and recreate the same hiearchy in memory. If you
|
|
Packit |
14c646 |
had blessed references, the retrieved references are blessed into
|
|
Packit |
14c646 |
the same package, so you must make sure you have access to the
|
|
Packit |
14c646 |
same perl class than the one used to create the relevant objects.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
There is also a dclone() routine which performs an optimized mirroring
|
|
Packit |
14c646 |
of any data structure, preserving its topology.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
Objects (blessed references) may also redefine the way storage and
|
|
Packit |
14c646 |
retrieval is performed, and/or what deep cloning should do on those
|
|
Packit |
14c646 |
objects.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
To compile this extension, run:
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
perl Makefile.PL [PERL_SRC=...where you put perl sources...]
|
|
Packit |
14c646 |
make
|
|
Packit |
14c646 |
make install
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
There is an embedded POD manual page in Storable.pm.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
Storable was written by Raphael Manfredi <Raphael_Manfredi@pobox.com>
|
|
Packit |
14c646 |
Maintenance is now done by cperl, https://github.com/rurban/Storable/
|
|
Packit |
14c646 |
Note that p5p still ships an old broken version, without stack overflow
|
|
Packit |
14c646 |
protection and large object support. As long as you don't store overlarge
|
|
Packit |
14c646 |
objects, they are compatible.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
Please e-mail us with problems, bug fixes, comments and complaints,
|
|
Packit |
14c646 |
although if you have complements you should send them to Raphael.
|
|
Packit |
14c646 |
Please don't e-mail Raphael with problems, as he no longer works on
|
|
Packit |
14c646 |
Storable, and your message will be delayed while he forwards it to us.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
------------------------------------------------------------------------
|
|
Packit |
14c646 |
Thanks to (in chronological order):
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
Jarkko Hietaniemi <jhi@iki.fi>
|
|
Packit |
14c646 |
Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de>
|
|
Packit |
14c646 |
Benjamin A. Holzman <bholzman@earthlink.net>
|
|
Packit |
14c646 |
Andrew Ford <A.Ford@ford-mason.co.uk>
|
|
Packit |
14c646 |
Gisle Aas <gisle@aas.no>
|
|
Packit |
14c646 |
Jeff Gresham <gresham_jeffrey@jpmorgan.com>
|
|
Packit |
14c646 |
Murray Nesbitt <murray@activestate.com>
|
|
Packit |
14c646 |
Albert N. Micheev <Albert.N.Micheev@f80.n5049.z2.fidonet.org>
|
|
Packit |
14c646 |
Marc Lehmann <pcg@opengroup.org>
|
|
Packit |
14c646 |
Justin Banks <justinb@wamnet.com>
|
|
Packit |
14c646 |
Jarkko Hietaniemi <jhi@iki.fi> (AGAIN, as perl 5.7.0 Pumpkin!)
|
|
Packit |
14c646 |
Todd Rinaldo <toddr@cpanel.net> and JD Lightsey <jd@cpanel.net>
|
|
Packit |
14c646 |
for optional disabling tie and bless for increased security.
|
|
Packit |
14c646 |
Reini Urban <rurban@cpanel.net> for the 3.0x >2G support and rewrite
|
|
Packit |
14c646 |
JD Lightsey <jd@cpanel.net>
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
for their contributions.
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
A Japanese translation of this man page is available at the Japanized
|
|
Packit |
14c646 |
Perl Resources Project <https://sourceforge.jp/projects/perldocjp/>.
|
|
Packit |
14c646 |
------------------------------------------------------------------------
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
The perl5-porters would like to thank
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
Raphael Manfredi <Raphael_Manfredi@pobox.com>
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
According to the perl5.8 Changes file, the following people have helped
|
|
Packit |
14c646 |
bring you this Storable release:
|
|
Packit |
14c646 |
|
|
Packit |
14c646 |
Abhijit Menon-Sen <ams@wiw.org>
|
|
Packit |
14c646 |
Andreas J. Koenig <andreas.koenig@anima.de>
|
|
Packit |
14c646 |
Archer Sully <archer@meer.net>
|
|
Packit |
14c646 |
Craig A. Berry <craig.berry@psinetcs.com>
|
|
Packit |
14c646 |
Dan Kogai <dankogai@dan.co.jp>
|
|
Packit |
14c646 |
Doug MacEachern <dougm@covalent.net>
|
|
Packit |
14c646 |
Gurusamy Sarathy <gsar@ActiveState.com>
|
|
Packit |
14c646 |
H.Merijn Brand <h.m.brand@xs4all.nl>
|
|
Packit |
14c646 |
Jarkko Hietaniemi <jhi@iki.fi>
|
|
Packit |
14c646 |
Mark Bixby
|
|
Packit |
14c646 |
Michael Stevens <michael@etla.org>
|
|
Packit |
14c646 |
Mike Guy <mjtg@cam.ac.uk>
|
|
Packit |
14c646 |
Nicholas Clark <nick@unfortu.net>
|
|
Packit |
14c646 |
Peter J. Farley III <pjfarley@banet.net>
|
|
Packit |
14c646 |
Peter Prymmer <pvhp@forte.com>
|
|
Packit |
14c646 |
Philip Newton <pne@cpan.org>
|
|
Packit |
14c646 |
Raphael Manfredi <Raphael_Manfredi@pobox.com>
|
|
Packit |
14c646 |
Robin Barker <rmb1@cise.npl.co.uk>
|
|
Packit |
14c646 |
Radu Greab <radu@netsoft.ro>
|
|
Packit |
14c646 |
Tim Bunce <Tim.Bunce@pobox.com>
|
|
Packit |
14c646 |
VMSperlers
|
|
Packit |
14c646 |
Yitzchak Scott-Thoennes <sthoenna@efn.org>
|