Branch Coverage

blib/lib/Class/InsideOut.pm
Criterion Covered Total %
branch 96 110 87.2


line true false branch
28 0 24 if ($@ =~ /\AWeak references|weaken is only available/)
56 34 2 if &reftype($_[0]) or !1
60 0 2 if overload::Overloaded($_[0]) and overload::Method($_[0], '&{}')
83 3 39 if (grep {$_ eq ':singleton';} @_) { }
101 22 2 if defined $opt
107 0 7 if ref $class
110 1 6 unless @_
113 3 3 if @_ == 1 and not ref $_[0] && &reftype($_[0]) eq 'HASH' or @_ > 1 and @_ % 2
117 1 2 @_ == 1 ? :
122 0 9 unless $properties
123 7 2 if (exists $properties->{$prop})
164 1 58 if (@_ == 0) { }
56 2 elsif (@_ == 1) { }
170 46 10 if (&blessed($_[0])) { }
9 1 elsif (ref \$_[0] eq 'SCALAR') { }
215 0 0 unless exists $prop->{$old_id}
230 8 58 if ref $opt ne 'HASH'
236 1 65 unless grep {$_ eq $key;} @valid_keys
238 3 62 if $@
247 9 107 unless $label =~ /\A[a-z_]\w*\z/i
250 1 106 if grep {$_ eq $label;} keys %{$PROP_DATA_FOR{caller 1};}
251 44 62 if defined $opt
264 48 0 ref $arg ? :
276 0 25 unless exists $PROP_DATA_FOR{$c}
280 35 18 exists $properties->{$prop}{&refaddr($obj)} ? :
288 1 0 $type eq 'HASH' ? :
12 1 $type eq 'ARRAY' ? :
6 13 $type eq 'SCALAR' ? :
308 31 51 if @_
318 37 34 if (@args) { }
20 14 elsif ($get_hook) { }
320 33 4 if ($set_hook) { }
322 9 24 if ($@)
332 12 8 if (wantarray) { }
338 4 16 if ($@)
339 12 4 wantarray ? :
359 3 45 if defined $demolish
363 10 69 unless exists $PROP_DATA_FOR{$c}
393 2 3 if (defined $hook) { }
2 1 elsif ($class->can('new')) { }
419 4 21 if defined $hook
425 3 16 if ($singleton) { }
453 4 18 if defined $hook
466 83 17 if (exists $options->{'privacy'} and $options->{'privacy'} eq 'public')
472 28 55 $options->{'set_hook'} || $options->{'get_hook'} ? :
481 53 65 if defined $OPTIONS{$class}
482 82 36 if defined $new_options
490 16 0 if (defined $obj) { }
496 1 0 /HASH/ ? :
12 1 /ARRAY/ ? :
3 13 /SCALAR/ ? :
510 0 22 unless $properties
534 0 10 unless exists $PROP_DATA_FOR{$c}
536 37 4 exists $PUBLIC_PROPS_FOR{$c}{$p} ? :
550 0 29 unless exists $OBJECT_REGISTRY{$obj_id}