File Coverage

blib/lib/DR/Msgpuck/Num.pm
Criterion Covered Total %
statement 24 30 80.0
branch 1 4 25.0
condition 1 3 33.3
subroutine 8 11 72.7
pod 0 2 0.0
total 34 50 68.0


line stmt bran cond sub pod time code
1 2     2   1128 use utf8;
  2         2  
  2         7  
2 2     2   42 use strict;
  2         2  
  2         23  
3 2     2   5 use warnings;
  2         1  
  2         44  
4              
5             package DR::Msgpuck::Num;
6 2     2   5 use Carp;
  2         2  
  2         87  
7 2     2   6 use Scalar::Util ();
  2         1  
  2         121  
8             use overload
9 0 0   0   0 bool => sub { ${ $_[0] } ? 1 : 0 },
  0         0  
10 0     0   0 int => sub { int ${ $_[0] } },
  0         0  
11 0     0   0 '""' => sub { ${ $_[0] } },
  0         0  
12 2     2   5 ;
  2         2  
  2         15  
13              
14             sub new {
15 5     5 0 1647 my ($class, $v) = @_;
16 5 50       15 croak "Argument doesn't look like number"
17             unless Scalar::Util::looks_like_number $v;
18 5   33     23 bless \$v => ref($class) || $class;
19             }
20              
21             sub TO_MSGPACK {
22 5     5 0 23 require DR::Msgpuck;
23 5         6 my ($self) = @_;
24 5         40 DR::Msgpuck::msgpack($$self);
25             }
26              
27             1;