Branch Coverage

blib/lib/Memoize.pm
Criterion Covered Total %
branch 70 80 87.5


line true false branch
33 3 69 unless (defined $fn and ref $fn eq 'CODE' || ref $fn eq '')
39 25 44 ref $fn ? :
43 5 63 if (defined $normalizer and not ref $normalizer)
49 14 54 exists $options{'INSTALL'} ? :
51 41 27 if (defined $install_name)
52 40 1 unless $install_name =~ /::/
58 6 62 if (($options{'LIST_CACHE'} || '') eq "MERGE")
67 29 99 ref $fullopt ? :
68 18 110 if ($cache_opt eq 'FAULT') { }
18 92 elsif ($cache_opt eq 'HASH') { }
8 84 elsif ($cache_opt eq 'TIE') { }
72 12 elsif ($cache_opt eq 'MEMORY') { }
8 4 elsif ($cache_opt eq 'MERGE' and not ref $fullopt) { }
75 1 7 if warnings::enabled("all")
82 0 4 unless tie %$hash, $module, @cache_opt_args
87 0 8 if $context ne "SCALAR"
88 0 8 unless exists $caches{'LIST'}
98 41 17 if (defined $install_name)
118 0 2 unless defined $info
121 0 4 if (tied %$cache and not tied(%$cache)->can('CLEAR')) { }
122 0 0 defined $info->{'NAME'} ? :
139 21 4 wantarray ? :
25 300 defined $normalizer ? :
145 48 277 if (wantarray) { }
146 4 44 unless $cache_L
149 19 25 exists $cache_L->{$argstr} ? :
155 4 273 unless $cache_S
158 3 106 $merged ? :
109 164 exists $cache_S->{$argstr} ? :
160 4 160 $merged ? :
172 2 21 unless (exists $memotable{$cref})
177 0 21 unless (defined $tabent)
181 15 6 if (defined $name)
197 32 67 if (ref $fn eq 'CODE') { }
67 0 elsif (not ref $fn) { }
200 1 66 if ($fn =~ /::/) { }
206 1 66 if (defined $name and not defined &$name)
215 0 98 if our $DEBUG
221 2 6 if (defined $funcname) { }
234 5 7 if $context eq "LIST" and $scalar_only{$package}