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.0900'; # VERSION
6              
7 27     27   642309 use strict;
  27         57  
  27         691  
8 27     27   136 use warnings;
  27         49  
  27         4464  
9              
10             BEGIN {
11 27     27   57 my $ok = 0;
12            
13 27         76 my @list = qw( XS FFI );
14             unshift @list, $ENV{ARCHIVE_LIBARCHIVE_ANY}
15 27 50       162 if defined $ENV{ARCHIVE_LIBARCHIVE_ANY};
16            
17 27         63 foreach my $impl (@list)
18             {
19 54 50       222 next if $impl eq 'Any';
20 54         156 my $str = qq{
21             use Archive::Libarchive::$impl;
22             *Archive::Libarchive::Any:: = *Archive::Libarchive::$impl\::;
23             };
24 54     27   4636 eval $str;
  27     27   10207  
  0         0  
  0         0  
  27         9481  
  0            
  0            
25 54 50       247 if($@) {
26             warn "Archive::Libarchive::$impl\: $@"
27 54 50       262 if $ENV{ARCHIVE_LIBARCHIVE_ANY_VERBOSE};
28             } else {
29 0         0 $ok = 1;
30 0         0 last;
31             }
32             }
33 27 50       27538 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.0900'; # VERSION
43              
44             }
45              
46              
47             1;
48              
49             __END__