diff options
author | Norbert Preining <norbert@preining.info> | 2024-03-15 03:06:35 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-03-15 03:06:35 +0000 |
commit | 12679ab7d3c2a210f4123163671b532b8b55d5f9 (patch) | |
tree | 0060d13467186ad977f4e73488ee20dd6c0017ab /systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm | |
parent | 62170822e034fdd3f81de7274835d0d3b0467100 (diff) |
CTAN sync 202403150306
Diffstat (limited to 'systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm')
-rw-r--r-- | systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm | 45 |
1 files changed, 24 insertions, 21 deletions
diff --git a/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm b/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm index 1314797297..923e57dc57 100644 --- a/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm +++ b/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/Storable.pm @@ -1,27 +1,19 @@ -package Memoize::Storable; - -=head1 NAME - -Memoize::Storable - store Memoized data in Storable database - -=head1 DESCRIPTION +use strict; use warnings; -See L<Memoize>. +package Memoize::Storable; +our $VERSION = '1.16'; -=cut +use Storable 1.002 (); # for lock_* function variants -use Storable (); -$VERSION = '1.03'; -$Verbose = 0; +our $Verbose; sub TIEHASH { - require Carp if $Verbose; my $package = shift; my $filename = shift; - my $truehash = (-e $filename) ? Storable::retrieve($filename) : {}; + my $truehash = (-e $filename) ? Storable::lock_retrieve($filename) : {}; my %options; print STDERR "Memoize::Storable::TIEHASH($filename, @_)\n" if $Verbose; - @options{@_} = (); + @options{@_} = (1) x @_; my $self = {FILENAME => $filename, H => $truehash, @@ -31,34 +23,30 @@ sub TIEHASH { } sub STORE { - require Carp if $Verbose; my $self = shift; print STDERR "Memoize::Storable::STORE(@_)\n" if $Verbose; $self->{H}{$_[0]} = $_[1]; } sub FETCH { - require Carp if $Verbose; my $self = shift; print STDERR "Memoize::Storable::FETCH(@_)\n" if $Verbose; $self->{H}{$_[0]}; } sub EXISTS { - require Carp if $Verbose; my $self = shift; print STDERR "Memoize::Storable::EXISTS(@_)\n" if $Verbose; exists $self->{H}{$_[0]}; } sub DESTROY { - require Carp if $Verbose; my $self= shift; print STDERR "Memoize::Storable::DESTROY(@_)\n" if $Verbose; if ($self->{OPTIONS}{'nstore'}) { - Storable::nstore($self->{H}, $self->{FILENAME}); + Storable::lock_nstore($self->{H}, $self->{FILENAME}); } else { - Storable::store($self->{H}, $self->{FILENAME}); + Storable::lock_store($self->{H}, $self->{FILENAME}); } } @@ -69,4 +57,19 @@ sub FIRSTKEY { sub NEXTKEY { undef; } + 1; + +__END__ + +=pod + +=head1 NAME + +Memoize::Storable - store Memoized data in Storable database + +=head1 DESCRIPTION + +See L<Memoize>. + +=cut |