Branch Coverage

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


line true false branch
33 3 70 unless (defined $fn and ref $fn eq 'CODE' || ref $fn eq '')
39 25 45 ref $fn ? :
43 6 63 if (defined $normalizer and not ref $normalizer)
49 14 55 exists $options{'INSTALL'} ? :
51 42 27 if (defined $install_name)
52 41 1 unless $install_name =~ /::/
58 6 63 if (($options{'LIST_CACHE'} || '') eq "MERGE")
67 29 101 ref $fullopt ? :
68 18 112 if ($cache_opt eq 'FAULT') { }
18 94 elsif ($cache_opt eq 'HASH') { }
8 86 elsif ($cache_opt eq 'TIE') { }
74 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 42 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 5 wantarray ? :
26 300 defined $normalizer ? :
145 48 278 if (wantarray) { }
146 4 44 unless $cache_L
149 19 25 exists $cache_L->{$argstr} ? :
155 4 274 unless $cache_S
158 3 106 $merged ? :
109 165 exists $cache_S->{$argstr} ? :
160 4 161 $merged ? :
172 2 21 unless (exists $memotable{$cref})
177 0 21 unless (defined $tabent)
181 15 6 if (defined $name)
197 32 69 if (ref $fn eq 'CODE') { }
69 0 elsif (not ref $fn) { }
200 1 68 if ($fn =~ /::/) { }
206 1 68 if (defined $name and not defined &$name)
215 0 100 if our $DEBUG
221 2 6 if (defined $funcname) { }
234 5 7 if $context eq "LIST" and $scalar_only{$package}