Branch Coverage

blib/lib/Ref/Store.pm
Criterion Covered Total %
branch 68 126 53.9


line true false branch
49 32 47 if (ref $k)
60 0 31 if ($cls eq 'Ref::Store')
61 0 0 unless (defined $SelectedImpl)
66 0 0 unless ($@)
72 0 0 unless $SelectedImpl
93 17 14 if ($self->can('table_init'))
103 0 54 unless defined $value
107 0 81 unless (defined $ko)
123 0 0 if exists $self->reverse->{$news}
125 0 0 unless exists $self->reverse->{$olds}
140 0 27 unless ($self->keytypes)
144 27 0 if (not exists $self->keytypes->{$kt})
153 4 0 if (not scalar %$v_rhash) { }
170 2 0 ref $key ? :
178 2 41 unless defined $value
207 13 0 if %{$self->scalar_lookup;} == 0 and %{$self->reverse;} == 0 and %{$self->forward;} == 0
220 1 2 unless defined $ukey
221 2 1 if ($lookup->prefix_len) { }
223 1 1 unless (ref $ukey)
263 0 1 if defined $self->_iter
273 0 1 if ($options{'OnlyKeys'}) { }
0 1 elsif ($options{'OnlyAttrs'}) { }
291 0 5 unless $iter
295 2 3 unless defined $nextk
299 0 3 unless defined $lookup
303 2 1 if ($iter->[1] == 0) { }
317 1 1 if ($iter->[0][$iter->[1]])
356 1 78 if ($expected and $o)
358 1 0 if ($existing and $expected != $existing)
364 43 35 if (not $o and $create_if_needed)
366 31 12 unless ($options{'StrongKey'})
391 16 27 unless ($options{'StrongValue'})
408 4 25 unless $o
418 0 6 unless $ko
420 0 6 unless defined $value
427 0 6 unless defined $vhash
432 0 6 unless (%{$self->reverse->{$vstr};})
445 0 26 unless $value
463 6 7 ref $attr ? :
471 0 55 unless my $ustr = $self->keytypes->{$t}
473 12 43 if (ref $attr) { }
476 0 43 unless $attr
480 38 17 if $aobj
482 4 13 unless ($options{'Create'})
489 12 1 unless ($options{'StrongAttr'})
499 0 37 unless ($value)
508 36 1 if (not $options{'StrongValue'}) { }
539 0 11 unless ($aobj)
545 0 11 unless $aobj
560 0 2 unless ($aobj)
577 0 1 unless $attrhash
605 0 31 if &in_global_destruction()
610 0 0 unless defined $v
611 0 0 if ($attr->can('unlink_value'))
621 1 0 if ($kobj->can('unlink_value'))
683 0 0 unless (defined $vobj)
699 0 0 unless $new_kstring ne $kstring
709 0 0 if ($weak_key)
712 0 0 if ($weak_val)
723 0 0 unless $new_astring ne $astring
733 0 0 if $pkg ne 'Ref::Store'
737 0 0 unless (defined $obj)
751 0 0 if $pkg ne 'Ref::Store'