File Coverage

blib/lib/Benchmark/Featureset/ParamCheck/Implementation/PV.pm
Criterion Covered Total %
statement 29 29 100.0
branch n/a
condition n/a
subroutine 12 12 100.0
pod 0 2 0.0
total 41 43 95.3


line stmt bran cond sub pod time code
1 4     4   11336 use v5.12;
  4         14  
2 4     4   19 use strict;
  4         6  
  4         72  
3 4     4   69 use warnings;
  4         8  
  4         212  
4              
5              
6             our $AUTHORITY = 'cpan:TOBYINK';
7             our $VERSION = '0.006';
8              
9             use parent qw(Benchmark::Featureset::ParamCheck::Base::PV);
10 4     4   40 use Params::Validate 1.26 qw(:types);
  4         50  
  4         20  
11 4     4   165 use namespace::autoclean;
  4         43  
  4         697  
12 4     4   24  
  4         7  
  4         18  
13             use constant long_name => 'Params::Validate';
14 4     4   208 use constant short_name => 'PV';
  4         124  
  4         200  
15 4     4   22  
  4         8  
  4         963  
16             state $check = {
17             integer => { type => SCALAR, regex => qr/\A-?[0-9]+\z/ },
18             hashes => { type => ARRAYREF, callbacks => { hashes => sub { !grep ref ne 'HASH', @{$_[0]} } } },
19             object => { type => OBJECT, can => [qw/print close/] },
20 400012     400012   3017720 };
  400012         5315484  
21 58     58 0 188 }
22              
23             state $check = [
24             { type => SCALAR, regex => qr/\A-?[0-9]+\z/ },
25             { type => ARRAYREF, callbacks => { hashes => sub { !grep ref ne 'HASH', @{$_[0]} } } },
26             { type => OBJECT, can => [qw/print close/] },
27             ];
28 400006     400006   2997629 }
  400006         4450806  
29 47     47 0 156  
30             1;