File Coverage

blib/lib/assign/Types.pm
Criterion Covered Total %
statement 22 22 100.0
branch n/a
condition n/a
subroutine 10 10 100.0
pod n/a
total 32 32 100.0


line stmt bran cond sub pod time code
1 5     5   35 use strict; use warnings;
  5     5   10  
  5         148  
  5         22  
  5         10  
  5         1210  
2             package assign::Types;
3              
4              
5             #------------------------------------------------------------------------------
6             package
7             assign::var;
8              
9             sub new {
10 69     69   157 my ($class, $var, $def) = @_;
11 69         274 bless {
12             var => $var,
13             def => $def,
14             }, $class;
15             }
16              
17 236     236   632 sub val { $_[0]->{var} }
18              
19 60     60   296 sub sigil { substr($_[0]->{var}, 0, 1) }
20              
21              
22              
23             #------------------------------------------------------------------------------
24             package
25             assign::skip;
26              
27             sub new {
28 2     2   5 my ($class) = @_;
29 2         2 my $skip = '_';
30 2         6 bless \$skip, $class;
31             }
32              
33 2     2   3 sub val { ${$_[0]} }
  2         18  
34              
35              
36              
37             #------------------------------------------------------------------------------
38             package
39             assign::skip_num;
40 5     5   6581 use overload '""', \&stringify;
  5         5805  
  5         43  
41              
42             sub new {
43 2     2   5 my ($class, $num) = @_;
44 2         5 bless \$num, $class;
45             }
46              
47 4     4   5 sub val { ${$_[0]} }
  4         36  
48              
49             1;