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/AnyDBM_File.pm | |
parent | 62170822e034fdd3f81de7274835d0d3b0467100 (diff) |
CTAN sync 202403150306
Diffstat (limited to 'systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/AnyDBM_File.pm')
-rw-r--r-- | systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/AnyDBM_File.pm | 48 |
1 files changed, 27 insertions, 21 deletions
diff --git a/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/AnyDBM_File.pm b/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/AnyDBM_File.pm index cf5f7f5bc2..c0aa5e6d36 100644 --- a/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/AnyDBM_File.pm +++ b/systems/texlive/tlnet/tlpkg/tlperl/lib/Memoize/AnyDBM_File.pm @@ -1,31 +1,37 @@ +use strict; use warnings; + package Memoize::AnyDBM_File; +our $VERSION = '1.16'; -=head1 NAME +our @ISA = qw(DB_File GDBM_File Memoize::NDBM_File SDBM_File ODBM_File) unless @ISA; -Memoize::AnyDBM_File - glue to provide EXISTS for AnyDBM_File for Storable use +for my $mod (@ISA) { + if (eval "require $mod") { + $mod = 'NDBM_File' + if $mod eq 'Memoize::NDBM_File' + and eval { NDBM_File->VERSION( '1.16' ) }; + print STDERR "AnyDBM_File => Selected $mod.\n" if our $Verbose; + @ISA = $mod; + return 1; + } +} -=head1 DESCRIPTION +die "No DBM package was successfully found or installed"; -See L<Memoize>. +__END__ -=cut +=pod -use vars qw(@ISA $VERSION); -$VERSION = '1.03'; -@ISA = qw(DB_File GDBM_File Memoize::NDBM_File Memoize::SDBM_File ODBM_File) unless @ISA; +=head1 NAME -my $verbose = 1; +Memoize::AnyDBM_File - glue to provide EXISTS for AnyDBM_File for Storable use -my $mod; -for $mod (@ISA) { -# (my $truemod = $mod) =~ s/^Memoize:://; -# my $file = "$mod.pm"; -# $file =~ s{::}{/}g; - if (eval "require $mod") { - print STDERR "AnyDBM_File => Selected $mod.\n" if $Verbose; - @ISA = ($mod); # if we leave @ISA alone, warnings abound - return 1; - } -} +=head1 DESCRIPTION -die "No DBM package was successfully found or installed"; +This class does the same thing as L<AnyDBM_File>, except that instead of +L<NDBM_File> itself it loads L<Memoize::NDBM_File> if L<NDBM_File> lacks +L<EXISTS|perltie/C<EXISTS>> support. + +Code which requires perl 5.37.3 or newer should simply use L<AnyBDM_File> directly. + +=cut |