File Coverage

blib/lib/Digest/MD5/M4p.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1             package Digest::MD5::M4p;
2              
3 1     1   25240 use strict;
  1         3  
  1         40  
4 1     1   6 use warnings;
  1         2  
  1         31  
5 1     1   6 use vars qw($VERSION @ISA @EXPORT_OK);
  1         6  
  1         333  
6             $VERSION = '0.01';
7              
8             require Exporter;
9             *import = \&Exporter::import;
10             @EXPORT_OK = qw(md5 md5_hex md5_base64);
11              
12             require DynaLoader;
13             @ISA=qw(DynaLoader);
14              
15             eval {
16             require Digest::base;
17             push(@ISA, 'Digest::base');
18             };
19             if ($@) {
20             my $err = $@;
21             *add_bits = sub { die $err };
22             }
23              
24              
25             eval {
26             Digest::MD5::M4p->bootstrap($VERSION);
27             };
28             if ($@) {
29             my $olderr = $@;
30             eval {
31             # Try to load the pure perl version which does not exist so far
32             require Digest::Perl::MD5::M4p;
33              
34             Digest::Perl::MD5::M4p->import(qw(md5 md5_hex md5_base64));
35             push(@ISA, "Digest::Perl::MD5"); # make OO interface work
36             };
37             if ($@) {
38             # restore the original error
39             die $olderr;
40             }
41             }
42             else {
43             *reset = \&new;
44             }
45              
46             1;
47             __END__