File Coverage

lib/Archive/Lha/Stream.pm
Criterion Covered Total %
statement 9 18 50.0
branch 0 4 0.0
condition n/a
subroutine 3 4 75.0
pod 1 1 100.0
total 13 27 48.1


line stmt bran cond sub pod time code
1             package Archive::Lha::Stream;
2            
3 1     1   1180 use strict;
  1         2  
  1         40  
4 1     1   5 use warnings;
  1         2  
  1         63  
5 1     1   4 use Carp;
  1         2  
  1         315  
6            
7             sub new {
8 0     0 1   my ($class, %options) = @_;
9            
10 0           my @available = qw( file string hex );
11 0           foreach my $name ( @available ) {
12 0 0         if ( $options{$name} ) {
13 0           my $package = 'Archive::Lha::Stream::'.ucfirst($name);
14 0           eval "require $package;";
15 0 0         croak "Can't load stream: $@" if $@;
16 0           return $package->new( %options );
17             }
18             }
19 0           croak "Can't load stream: available streams are " .
20             (join ', ', @available);
21             }
22            
23             1;
24            
25             __END__