diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/auto/Storable')
26 files changed, 574 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al new file mode 100644 index 00000000000..add6a1d678b --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al @@ -0,0 +1,12 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 192 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\BIN_VERSION_NV.al)" +sub BIN_VERSION_NV { + sprintf "%d.%03d", BIN_MAJOR(), BIN_MINOR(); +} + +# end of Storable::BIN_VERSION_NV +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al new file mode 100644 index 00000000000..e17ce4d2c3a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al @@ -0,0 +1,12 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 196 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\BIN_WRITE_VERSION_NV.al)" +sub BIN_WRITE_VERSION_NV { + sprintf "%d.%03d", BIN_MAJOR(), BIN_WRITE_MINOR(); +} + +# end of Storable::BIN_WRITE_VERSION_NV +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al b/Master/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al new file mode 100644 index 00000000000..c0df84b654f --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al @@ -0,0 +1,21 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 83 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\CAN_FLOCK.al)" +# +# Determine whether locking is possible, but only when needed. +# + +sub CAN_FLOCK; my $CAN_FLOCK; sub CAN_FLOCK { + return $CAN_FLOCK if defined $CAN_FLOCK; + require Config; import Config; + return $CAN_FLOCK = + $Config{'d_flock'} || + $Config{'d_fcntl_can_lock'} || + $Config{'d_lockf'}; +} + +# end of Storable::CAN_FLOCK +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/Storable.dll b/Master/tlpkg/tlperl/lib/auto/Storable/Storable.dll Binary files differnew file mode 100755 index 00000000000..419c2877140 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/Storable.dll diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_freeze.al b/Master/tlpkg/tlperl/lib/auto/Storable/_freeze.al new file mode 100644 index 00000000000..5e1ea07846a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/_freeze.al @@ -0,0 +1,23 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 330 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\_freeze.al)" +# Internal freeze routine +sub _freeze { + my $xsptr = shift; + my $self = shift; + logcroak "not a reference" unless ref($self); + logcroak "too many arguments" unless @_ == 0; # No @foo in arglist + my $da = $@; # Don't mess if called from exception handler + my $ret; + # Call C routine mstore or net_mstore, depending on network order + eval { $ret = &$xsptr($self) }; + logcroak $@ if $@ =~ s/\.?\n$/,/; + $@ = $da; + return $ret ? $ret : undef; +} + +# end of Storable::_freeze +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/_retrieve.al new file mode 100644 index 00000000000..f16abc56b2a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/_retrieve.al @@ -0,0 +1,31 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 364 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\_retrieve.al)" +# Internal retrieve routine +sub _retrieve { + my ($file, $use_locking) = @_; + local *FILE; + open(FILE, $file) || logcroak "can't open $file: $!"; + binmode FILE; # Archaic systems... + my $self; + my $da = $@; # Could be from exception handler + if ($use_locking) { + unless (&CAN_FLOCK) { + logcarp "Storable::lock_store: fcntl/flock emulation broken on $^O"; + return undef; + } + flock(FILE, LOCK_SH) || logcroak "can't get shared lock on $file: $!"; + # Unlocking will happen when FILE is closed + } + eval { $self = pretrieve(*FILE) }; # Call C routine + close(FILE); + logcroak $@ if $@ =~ s/\.?\n$/,/; + $@ = $da; + return $self; +} + +# end of Storable::_retrieve +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_store.al b/Master/tlpkg/tlperl/lib/auto/Storable/_store.al new file mode 100644 index 00000000000..19ed0287800 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/_store.al @@ -0,0 +1,41 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 239 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\_store.al)" +# Internal store to file routine +sub _store { + my $xsptr = shift; + my $self = shift; + my ($file, $use_locking) = @_; + logcroak "not a reference" unless ref($self); + logcroak "wrong argument number" unless @_ == 2; # No @foo in arglist + local *FILE; + if ($use_locking) { + open(FILE, ">>$file") || logcroak "can't write into $file: $!"; + unless (&CAN_FLOCK) { + logcarp "Storable::lock_store: fcntl/flock emulation broken on $^O"; + return undef; + } + flock(FILE, LOCK_EX) || + logcroak "can't get exclusive lock on $file: $!"; + truncate FILE, 0; + # Unlocking will happen when FILE is closed + } else { + open(FILE, ">$file") || logcroak "can't create $file: $!"; + } + binmode FILE; # Archaic systems... + my $da = $@; # Don't mess if called from exception handler + my $ret; + # Call C routine nstore or pstore, depending on network order + eval { $ret = &$xsptr(*FILE, $self) }; + close(FILE) or $ret = undef; + unlink($file) or warn "Can't unlink $file: $!\n" if $@ || !defined $ret; + logcroak $@ if $@ =~ s/\.?\n$/,/; + $@ = $da; + return $ret ? $ret : undef; +} + +# end of Storable::_store +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al new file mode 100644 index 00000000000..ad88105864a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al @@ -0,0 +1,27 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 292 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\_store_fd.al)" +# Internal store routine on opened file descriptor +sub _store_fd { + my $xsptr = shift; + my $self = shift; + my ($file) = @_; + logcroak "not a reference" unless ref($self); + logcroak "too many arguments" unless @_ == 1; # No @foo in arglist + my $fd = fileno($file); + logcroak "not a valid file descriptor" unless defined $fd; + my $da = $@; # Don't mess if called from exception handler + my $ret; + # Call C routine nstore or pstore, depending on network order + eval { $ret = &$xsptr($file, $self) }; + logcroak $@ if $@ =~ s/\.?\n$/,/; + local $\; print $file ''; # Autoflush the file if wanted + $@ = $da; + return $ret ? $ret : undef; +} + +# end of Storable::_store_fd +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Storable/autosplit.ix new file mode 100644 index 00000000000..f68bf3f340d --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/autosplit.ix @@ -0,0 +1,28 @@ +# Index created by AutoSplit for ..\..\lib\Storable.pm +# (file acts as timestamp) +package Storable; +sub logcroak ; +sub logcarp ; +sub CAN_FLOCK ; +sub show_file_magic ; +sub file_magic ; +sub read_magic ; +sub BIN_VERSION_NV ; +sub BIN_WRITE_VERSION_NV ; +sub store ; +sub nstore ; +sub lock_store ; +sub lock_nstore ; +sub _store ; +sub store_fd ; +sub nstore_fd ; +sub _store_fd ; +sub freeze ; +sub nfreeze ; +sub _freeze ; +sub retrieve ; +sub lock_retrieve ; +sub _retrieve ; +sub fd_retrieve ; +sub thaw ; +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al new file mode 100644 index 00000000000..b25d7b009c3 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al @@ -0,0 +1,25 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 387 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\fd_retrieve.al)" +# +# fd_retrieve +# +# Same as retrieve, but perform from an already opened file descriptor instead. +# +sub fd_retrieve { + my ($file) = @_; + my $fd = fileno($file); + logcroak "not a valid file descriptor" unless defined $fd; + my $self; + my $da = $@; # Could be from exception handler + eval { $self = pretrieve($file) }; # Call C routine + logcroak $@ if $@ =~ s/\.?\n$/,/; + $@ = $da; + return $self; +} + +# end of Storable::fd_retrieve +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/file_magic.al b/Master/tlpkg/tlperl/lib/auto/Storable/file_magic.al new file mode 100644 index 00000000000..1bce16c051c --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/file_magic.al @@ -0,0 +1,21 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 118 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\file_magic.al)" +sub file_magic { + my $file = shift; + my $fh = new FileHandle; + open($fh, "<". $file) || die "Can't open '$file': $!"; + binmode($fh); + defined(sysread($fh, my $buf, 32)) || die "Can't read from '$file': $!"; + close($fh); + + $file = "./$file" unless $file; # ensure TRUE value + + return read_magic($buf, $file); +} + +# end of Storable::file_magic +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/freeze.al b/Master/tlpkg/tlperl/lib/auto/Storable/freeze.al new file mode 100644 index 00000000000..7e1a45687b2 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/freeze.al @@ -0,0 +1,18 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 311 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\freeze.al)" +# +# freeze +# +# Store oject and its hierarchy in memory and return a scalar +# containing the result. +# +sub freeze { + _freeze(\&mstore, @_); +} + +# end of Storable::freeze +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al b/Master/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al new file mode 100644 index 00000000000..2c5d9950595 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al @@ -0,0 +1,17 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 230 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\lock_nstore.al)" +# +# lock_nstore +# +# Same as nstore, but flock the file first (advisory locking). +# +sub lock_nstore { + return _store(\&net_pstore, @_, 1); +} + +# end of Storable::lock_nstore +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al new file mode 100644 index 00000000000..1e2879fc48a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al @@ -0,0 +1,17 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 355 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\lock_retrieve.al)" +# +# lock_retrieve +# +# Same as retrieve, but with advisory locking. +# +sub lock_retrieve { + _retrieve($_[0], 1); +} + +# end of Storable::lock_retrieve +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/lock_store.al b/Master/tlpkg/tlperl/lib/auto/Storable/lock_store.al new file mode 100644 index 00000000000..4a863b15a97 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/lock_store.al @@ -0,0 +1,17 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 221 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\lock_store.al)" +# +# lock_store +# +# Same as store, but flock the file first (advisory locking). +# +sub lock_store { + return _store(\&pstore, @_, 1); +} + +# end of Storable::lock_store +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/logcarp.al b/Master/tlpkg/tlperl/lib/auto/Storable/logcarp.al new file mode 100644 index 00000000000..bbdd382ff31 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/logcarp.al @@ -0,0 +1,12 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 79 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\logcarp.al)" +sub logcarp { + Carp::carp(@_); +} + +# end of Storable::logcarp +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/logcroak.al b/Master/tlpkg/tlperl/lib/auto/Storable/logcroak.al new file mode 100644 index 00000000000..9c8daff7dae --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/logcroak.al @@ -0,0 +1,17 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 70 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\logcroak.al)" +# +# Use of Log::Agent is optional. If it hasn't imported these subs then +# Autoloader will kindly supply our fallback implementation. +# + +sub logcroak { + Carp::croak(@_); +} + +# end of Storable::logcroak +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/nfreeze.al b/Master/tlpkg/tlperl/lib/auto/Storable/nfreeze.al new file mode 100644 index 00000000000..92f4641d461 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/nfreeze.al @@ -0,0 +1,17 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 321 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\nfreeze.al)" +# +# nfreeze +# +# Same as freeze but in network order. +# +sub nfreeze { + _freeze(\&net_mstore, @_); +} + +# end of Storable::nfreeze +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/nstore.al b/Master/tlpkg/tlperl/lib/auto/Storable/nstore.al new file mode 100644 index 00000000000..d865716dd5c --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/nstore.al @@ -0,0 +1,17 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 212 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\nstore.al)" +# +# nstore +# +# Same as store, but in network order. +# +sub nstore { + return _store(\&net_pstore, @_, 0); +} + +# end of Storable::nstore +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al new file mode 100644 index 00000000000..5979b873150 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al @@ -0,0 +1,18 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 282 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\nstore_fd.al)" +# +# nstore_fd +# +# Same as store_fd, but in network order. +# +sub nstore_fd { + my ($self, $file) = @_; + return _store_fd(\&net_pstore, @_); +} + +# end of Storable::nstore_fd +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/read_magic.al b/Master/tlpkg/tlperl/lib/auto/Storable/read_magic.al new file mode 100644 index 00000000000..40b54af7556 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/read_magic.al @@ -0,0 +1,69 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 131 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\read_magic.al)" +sub read_magic { + my($buf, $file) = @_; + my %info; + + my $buflen = length($buf); + my $magic; + if ($buf =~ s/^(pst0|perl-store)//) { + $magic = $1; + $info{file} = $file || 1; + } + else { + return undef if $file; + $magic = ""; + } + + return undef unless length($buf); + + my $net_order; + if ($magic eq "perl-store" && ord(substr($buf, 0, 1)) > 1) { + $info{version} = -1; + $net_order = 0; + } + else { + $net_order = ord(substr($buf, 0, 1, "")); + my $major = $net_order >> 1; + return undef if $major > 4; # sanity (assuming we never go that high) + $info{major} = $major; + $net_order &= 0x01; + if ($major > 1) { + return undef unless length($buf); + my $minor = ord(substr($buf, 0, 1, "")); + $info{minor} = $minor; + $info{version} = "$major.$minor"; + $info{version_nv} = sprintf "%d.%03d", $major, $minor; + } + else { + $info{version} = $major; + } + } + $info{version_nv} ||= $info{version}; + $info{netorder} = $net_order; + + unless ($net_order) { + return undef unless length($buf); + my $len = ord(substr($buf, 0, 1, "")); + return undef unless length($buf) >= $len; + return undef unless $len == 4 || $len == 8; # sanity + $info{byteorder} = substr($buf, 0, $len, ""); + $info{intsize} = ord(substr($buf, 0, 1, "")); + $info{longsize} = ord(substr($buf, 0, 1, "")); + $info{ptrsize} = ord(substr($buf, 0, 1, "")); + if ($info{version_nv} >= 2.002) { + return undef unless length($buf); + $info{nvsize} = ord(substr($buf, 0, 1, "")); + } + } + $info{hdrsize} = $buflen - length($buf); + + return \%info; +} + +# end of Storable::read_magic +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/retrieve.al new file mode 100644 index 00000000000..b996685671a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/retrieve.al @@ -0,0 +1,18 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 345 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\retrieve.al)" +# +# retrieve +# +# Retrieve object hierarchy from disk, returning a reference to the root +# object of that tree. +# +sub retrieve { + _retrieve($_[0], 0); +} + +# end of Storable::retrieve +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al b/Master/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al new file mode 100644 index 00000000000..c7422c6648a --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al @@ -0,0 +1,30 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 96 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\show_file_magic.al)" +sub show_file_magic { + print <<EOM; +# +# To recognize the data files of the Perl module Storable, +# the following lines need to be added to the local magic(5) file, +# usually either /usr/share/misc/magic or /etc/magic. +# +0 string perl-store perl Storable(v0.6) data +>4 byte >0 (net-order %d) +>>4 byte &01 (network-ordered) +>>4 byte =3 (major 1) +>>4 byte =2 (major 1) + +0 string pst0 perl Storable(v0.7) data +>4 byte >0 +>>4 byte &01 (network-ordered) +>>4 byte =5 (major 2) +>>4 byte =4 (major 2) +>>5 byte >0 (minor %d) +EOM +} + +# end of Storable::show_file_magic +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/store.al b/Master/tlpkg/tlperl/lib/auto/Storable/store.al new file mode 100644 index 00000000000..c9cee55076e --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/store.al @@ -0,0 +1,20 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 200 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\store.al)" +# +# store +# +# Store target object hierarchy, identified by a reference to its root. +# The stored object tree may later be retrieved to memory via retrieve. +# Returns undef if an I/O error occurred, in which case the file is +# removed. +# +sub store { + return _store(\&pstore, @_, 0); +} + +# end of Storable::store +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/store_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/store_fd.al new file mode 100644 index 00000000000..8e3b72c1199 --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/store_fd.al @@ -0,0 +1,18 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 272 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\store_fd.al)" +# +# store_fd +# +# Same as store, but perform on an already opened file descriptor instead. +# Returns undef if an I/O error occurred. +# +sub store_fd { + return _store_fd(\&pstore, @_); +} + +# end of Storable::store_fd +1; diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/thaw.al b/Master/tlpkg/tlperl/lib/auto/Storable/thaw.al new file mode 100644 index 00000000000..495a71769eb --- /dev/null +++ b/Master/tlpkg/tlperl/lib/auto/Storable/thaw.al @@ -0,0 +1,28 @@ +# NOTE: Derived from ..\..\lib\Storable.pm. +# Changes made here will be lost when autosplit is run again. +# See AutoSplit.pm. +package Storable; + +#line 404 "..\..\lib\Storable.pm (autosplit into ..\..\lib\auto\Storable\thaw.al)" +# +# thaw +# +# Recreate objects in memory from an existing frozen image created +# by freeze. If the frozen image passed is undef, return undef. +# +sub thaw { + my ($frozen) = @_; + return undef unless defined $frozen; + my $self; + my $da = $@; # Could be from exception handler + eval { $self = mretrieve($frozen) }; # Call C routine + logcroak $@ if $@ =~ s/\.?\n$/,/; + $@ = $da; + return $self; +} + +1; +__END__ + +1; +# end of Storable::thaw |