File Coverage

blib/lib/Archive/Libarchive/Any.pm
Criterion Covered Total %
statement 18 24 75.0
branch 5 10 50.0
condition n/a
subroutine 5 5 100.0
pod n/a
total 28 39 71.7


line stmt bran cond sub pod time code
1             package
2             Archive::Libarchive::Any::_version;
3              
4             # PODNAME: Archive::Libarchive::Any
5             our $VERSION = '0.0800'; # VERSION
6              
7 27     27   846531 use strict;
  27         1041  
  27         1081  
8 27     27   144 use warnings;
  27         54  
  27         4885  
9              
10             BEGIN {
11 27     27   73 my $ok = 0;
12            
13 27         144 my @list = qw( XS FFI );
14 27 50       223 unshift @list, $ENV{ARCHIVE_LIBARCHIVE_ANY}
15             if defined $ENV{ARCHIVE_LIBARCHIVE_ANY};
16            
17 27         69 foreach my $impl (@list)
18             {
19 54 50       242 next if $impl eq 'Any';
20 54         175 my $str = qq{
21             use Archive::Libarchive::$impl;
22             *Archive::Libarchive::Any:: = *Archive::Libarchive::$impl\::;
23             };
24 54     27   4001 eval $str;
  27     27   12592  
  0         0  
  0         0  
  27         11879  
  0            
  0            
25 54 50       218 if($@) {
26 54 50       315 warn "Archive::Libarchive::$impl\: $@"
27             if $ENV{ARCHIVE_LIBARCHIVE_ANY_VERBOSE};
28             } else {
29 0         0 $ok = 1;
30 0         0 last;
31             }
32             }
33 27 50       38243 die "could not find an appropriate libarchive implementation" unless $ok;
34             };
35              
36             package Archive::Libarchive::Any;
37              
38             # ABSTRACT: Perl bindings to libarchive
39              
40             if(0) {
41              
42             our $VERSION = '0.0800'; # VERSION
43              
44             }
45              
46              
47             1;
48              
49             __END__