File Coverage

blib/lib/L.pm
Criterion Covered Total %
statement 24 25 96.0
branch 7 8 87.5
condition n/a
subroutine 7 7 100.0
pod n/a
total 38 40 95.0


line stmt bran cond sub pod time code
1             package L;
2 2     2   108931 use 5.008_001;
  2         12  
3 2     2   9 use strict;
  2         2  
  2         32  
4 2     2   7 use warnings;
  2         3  
  2         49  
5              
6 2     2   716 use version 0.77; our $VERSION = version->declare("v1.0.1");
  2         3256  
  2         12  
7              
8 2     2   182 use Carp ();
  2         5  
  2         23  
9 2     2   797 use Module::Load ();
  2         1890  
  2         327  
10              
11             {
12             package
13             UNIVERSAL;
14              
15             our $AUTOLOAD;
16             sub AUTOLOAD {
17 100020 100   100020   556864 return if $AUTOLOAD =~ /::DESTROY$/;
18 3 50       21 if (my ($module, $method) = ($AUTOLOAD =~ /^(.*)::(.*?)$/)) {
19 3 100       7 if ($module eq 'main') {
20 1         59 Carp::croak(qq{Undefined subroutine &main::$method called});
21             }
22              
23 2         6 Module::Load::load($module);
24              
25 2 100       278 my $func = $module->can($method)
26             or Carp::croak qq{Can't locate object method "$method" via package "$module"};
27              
28 1         6 $func->(@_);
29             } else {
30 0           die "WTF? $AUTOLOAD";
31             }
32             }
33             }
34              
35             1;
36             __END__