32 lines
674 B
Perl
32 lines
674 B
Perl
|
package Memoize::AnyDBM_File;
|
||
|
|
||
|
=head1 NAME
|
||
|
|
||
|
Memoize::AnyDBM_File - glue to provide EXISTS for AnyDBM_File for Storable use
|
||
|
|
||
|
=head1 DESCRIPTION
|
||
|
|
||
|
See L<Memoize>.
|
||
|
|
||
|
=cut
|
||
|
|
||
|
use vars qw(@ISA $VERSION);
|
||
|
$VERSION = '1.03';
|
||
|
@ISA = qw(DB_File GDBM_File Memoize::NDBM_File Memoize::SDBM_File ODBM_File) unless @ISA;
|
||
|
|
||
|
my $verbose = 1;
|
||
|
|
||
|
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;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
die "No DBM package was successfully found or installed";
|