File Coverage

blib/lib/AnyEvent/Beanstalk/Stats.pm
Criterion Covered Total %
statement 12 28 42.8
branch 0 4 0.0
condition 0 12 0.0
subroutine 4 8 50.0
pod 0 1 0.0
total 16 53 30.1


line stmt bran cond sub pod time code
1             package AnyEvent::Beanstalk::Stats;
2             $AnyEvent::Beanstalk::Stats::VERSION = '1.170590';
3 6     6   24 use strict;
  6         7  
  6         140  
4 6     6   17 use warnings;
  6         6  
  6         120  
5              
6 6     6   21 use Carp ();
  6         6  
  6         841  
7              
8             our $AUTOLOAD;
9              
10             sub new {
11 0     0 0   my $proto = shift;
12 0           my $href = shift;
13 0           bless $href, $proto;
14             }
15              
16       0     sub DESTROY { }
17              
18             sub AUTOLOAD {
19 0     0     (my $method = $AUTOLOAD) =~ s/.*:://;
20 0           (my $field = $method) =~ tr/_/-/;
21              
22 0 0 0       unless (ref($_[0]) and exists $_[0]->{$field}) {
23 0   0       my $proto = ref($_[0]) || $_[0];
24 0           Carp::croak(qq{Can't locate object method "$method" via package "$proto"});
25             }
26 6     6   26 no strict 'refs';
  6         7  
  6         717  
27 0           *{$AUTOLOAD} = sub {
28 0     0     my $self = shift;
29 0 0 0       unless (ref($self) and exists $self->{$field}) {
30 0   0       my $proto = ref($self) || $self;
31 0           Carp::croak(qq{Can't locate object method "$method" via package "$proto"});
32             }
33 0           $self->{$field};
34 0           };
35              
36 0           goto &$AUTOLOAD;
37             }
38              
39             1;
40              
41             __END__