Branch Coverage

blib/lib/Hash/DefHash.pm
Criterion Covered Total %
branch 107 130 82.3


line true false branch
43 1 5 if &blessed($_[0]) and $_[0]->isa('Hash::DefHash')
55 43 19 if ($opts{'check'} // 1)
72 76 19 if $k =~ /$re_key/x
84 0 11 unless my($p_prop, $p_attr, $p_lang, $p_attr_wo_prop) = $k =~ /$re_key/x
87 7 4 if (defined $p_prop) { }
88 1 6 if $p_prop =~ /\A_/
90 5 1 if (defined $p_attr) { }
0 1 elsif (defined $p_lang) { }
91 2 3 if $p_attr =~ /(?:\A|\.)_/
99 2 2 if $p_attr_wo_prop =~ /(?:\A|\.)_/
113 0 11 unless my($p_prop, $p_attr, $p_lang, $p_attr_wo_prop) = $k =~ /$re_key/x
115 4 2 if defined $p_attr or $p_lang or defined $p_attr_wo_prop
116 1 1 if $p_prop =~ /\A_/
126 2 4 unless exists $h->{$prop}
148 0 2 unless $prop =~ /$re_prop/
149 1 1 if exists $h->{$prop}
157 0 3 unless $prop =~ /$re_prop/
158 1 2 if (exists $h->{$prop}) { }
172 0 2 unless $prop =~ /$re_prop/
173 1 1 if (exists $h->{$prop}) { }
185 0 22 unless my($p_prop, $p_attr, $p_lang, $p_attr_wo_prop) = $k =~ /$re_key/x
187 2 20 if defined $p_prop and $p_prop =~ /\A_/
188 4 16 if defined $p_attr and $p_attr =~ /(?:\A|\.)_/
189 4 12 if defined $p_attr_wo_prop and $p_attr_wo_prop =~ /(?:\A|\.)_/
190 10 2 if (defined $p_attr or defined $p_lang or defined $p_attr_wo_prop) { }
191 5 5 if $delattrs
203 4 2 unless ($prop eq '')
204 0 4 unless $prop =~ /$re_prop/
209 0 56 unless my($p_prop, $p_attr, $p_lang, $p_attr_wo_prop) = $k =~ /$re_key/x
213 24 32 if (defined $p_attr) { }
0 32 elsif (defined $p_lang) { }
20 12 elsif (defined $p_attr_wo_prop) { }
214 17 7 unless $prop eq $p_prop
215 4 3 if $p_attr =~ /(?:\A|\.)_/
218 0 0 unless $prop eq $p_prop
221 14 6 unless $prop eq ''
222 4 2 if $p_attr_wo_prop =~ /(?:\A|\.)_/
235 2 9 unless exists $h->{$k}
262 3 2 if ($prop ne '')
263 0 3 unless $prop =~ /$re_prop/
265 0 5 unless $attr =~ /$re_attr/
268 2 3 if exists $h->{$k}
277 2 2 if ($prop ne '')
278 0 2 unless $prop =~ /$re_prop/
280 0 4 unless $attr =~ /$re_attr/
282 2 2 if (exists $h->{$k}) { }
297 2 2 if ($prop ne '')
298 0 2 unless $prop =~ /$re_prop/
300 0 4 unless $attr =~ /$re_attr/
302 2 2 if (exists $h->{$k}) { }
315 0 20 unless my($p_prop, $p_attr, $p_lang, $p_attr_wo_prop) = $k =~ /$re_key/x
317 8 12 if (defined $p_attr) { }
0 12 elsif ($p_lang) { }
8 4 elsif (defined $p_attr_wo_prop) { }
318 4 4 unless $prop eq $p_prop
319 2 2 if $p_attr =~ /(?:\A|\.)_/
321 0 0 unless $prop eq $p_prop
323 4 4 unless $prop eq ''
324 2 2 if $p_attr_wo_prop =~ /(?:\A|\.)_/
345 17 18 if ($self->{'parent'})
349 1 34 if $res eq 'C'
384 6 4 if ($lang eq $deflang) { }
393 10 1 if (defined $v)
394 1 9 if ($k->[2])
396 0 1 $has_nl ? :