| Server IP : 62.72.47.131 / Your IP : 216.73.217.34 Web Server : Apache/2.4.66 (Debian) System : Linux 975cdb959a49 5.14.0-611.55.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 15:19:29 EDT 2026 x86_64 User : ( 501) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/perl/5.40/Memoize/ |
Upload File : |
use strict; use warnings;
package Memoize::NDBM_File;
our $VERSION = '1.16';
use NDBM_File;
our @ISA = qw(NDBM_File);
# NDBM_File cannot store undef and will store an empty string if you try
# but it does return undef if you try to read a non-existent key
# so we can emulate exists() using defined()
sub EXISTS {
defined shift->FETCH(@_);
}
# Perl 5.37.3 adds this EXISTS emulation to NDBM_File itself
delete $Memoize::NDBM_File::{'EXISTS'}
if eval { NDBM_File->VERSION( '1.16' ) };
1;
__END__
=pod
=head1 NAME
Memoize::NDBM_File - glue to provide EXISTS for NDBM_File for Storable use
=head1 DESCRIPTION
This class provides L<EXISTS|perltie/C<EXISTS>> support for L<NDBM_File>.
L<In Perl 5.37.3|https://github.com/Perl/perl5/commit/c0a1a377c02ed789f5eff667f46a2314a05c5a4c>,
support for C<EXISTS> was added to L<NDBM_File> itself.
Code which requires such a perl should simply use L<NBDM_File> directly.
=cut