File Coverage

blib/lib/Net/WebSocket/X/BadArg.pm
Criterion Covered Total %
statement 13 16 81.2
branch 1 4 25.0
condition n/a
subroutine 4 4 100.0
pod n/a
total 18 24 75.0


line stmt bran cond sub pod time code
1             package Net::WebSocket::X::BadArg;
2              
3 2     2   950 use strict;
  2         4  
  2         51  
4 2     2   9 use warnings;
  2         3  
  2         52  
5              
6 2     2   9 use parent qw( Net::WebSocket::X::Base );
  2         3  
  2         11  
7              
8             sub _new {
9 8     8   478 my ($class, $name, $val, $why) = @_;
10              
11 8         21 my $caller = (caller 1)[3];
12              
13 8 50       286 if ($why) {
14 8         37 return $class->SUPER::_new(
15             "$caller: invalid “$name” ($val) - $why",
16             name => $name,
17             value => $val,
18             why => $why,
19             );
20             }
21              
22 0           my $disp_val = $val;
23 0 0         $disp_val = q<> if !defined $val;
24              
25 0           return $class->SUPER::_new(
26             sprintf("%s: invalid “%s” (%s)", $caller, $name, $disp_val),
27             name => $name,
28             value => $val,
29             );
30             }
31              
32             1;