Branch Coverage

blib/lib/Data/Util/PurePerl.pm
Criterion Covered Total %
branch 174 184 94.5


line true false branch
55 4 27 unless is_string($class)
62 3 10 if (ref $x) { }
72 4 6 ref $_[0] eq 'SCALAR' || ref $_[0] eq 'REF' || _overloaded($_[0], '${}') ? :
77 89 5 ref $_[0] eq 'ARRAY' || _overloaded($_[0], '@{}') ? :
81 3 3 ref $_[0] eq 'HASH' || _overloaded($_[0], '%{}') ? :
85 271 8 ref $_[0] eq 'CODE' || _overloaded($_[0], '&{}') ? :
89 3 2 ref $_[0] eq 'GLOB' || _overloaded($_[0], '*{}') ? :
93 0 1 ref $_[0] eq 'Regexp' ? :
97 1 1 ref $_[0] eq 'Regexp' ? :
104 4 7 unless is_string($class)
107 2 5 &Scalar::Util::blessed($obj) && $obj->isa($class) ? :
113 3 12 if (ref $x) { }
9 3 elsif (is_string($x)) { }
114 2 1 if (&Scalar::Util::blessed($x))
119 7 2 if (get_stash($x))
137 3 122 if not defined $_[0] or ref $_[0]
151 4 50 if not defined $_[0] or ref $_[0]
164 1 70 if (&Scalar::Util::blessed($invocant)) { }
7 63 elsif (not is_string($invocant)) { }
176 11 64 unless $pack = $$pack{$part . '::'}
189 48 122 if (ref $s) { }
98 24 elsif (defined $s) { }
190 3 45 if (ref $s eq 'CODE') { }
1 44 elsif (ref $s eq 'Regexp') { }
199 41 57 if is_number($s)
200 7 50 if is_glob_ref(\$s)
212 1 27 unless @_
215 1 26 unless is_string($into)
217 3 23 @_ == 1 ? :
220 1 28 unless defined $code
224 8 20 if (defined &{$slot;})
234 1 16 unless @_
238 1 15 unless is_string($package)
239 1 14 unless my $stash = get_stash($package)
241 3 11 @_ == 1 && is_hash_ref($_[0]) ? :
248 9 15 if (ref \$glob ne 'GLOB')
249 6 3 if (ref $glob)
250 3 3 if (&Scalar::Util::reftype($glob) eq 'CODE') { }
251 1 2 if (defined $specified_code and $specified_code != $glob)
265 2 13 unless (defined $code)
269 1 12 if (defined $specified_code and $specified_code != $code)
273 0 12 if (B::svref_2object($code)->CONST)
283 15 45 if defined *{$glob;}{$slot}
293 1 10 unless is_code_ref($code)
297 0 10 unless $gv->isa('B::GV')
298 3 7 wantarray ? :
304 2 28 unless is_string($package)
305 1 27 unless is_string($name)
307 2 25 if (@flags)
308 2 0 if (grep {$_ eq '-create';} @flags) { }
317 4 21 unless my $stash = get_stash($package)
319 16 5 if (defined(my $glob = $stash->{$name}))
320 12 4 if (ref \$glob eq 'GLOB') { }
335 28 14 unless $is_method
346 25 54 if (is_scalar_ref($arg) and is_integer($$arg)) { }
14 40 elsif (defined $arg and \$arg == \*_) { }
349 25 0 if ($$arg >= 0) { }
350 20 5 if $$arg > $max_ph
353 0 0 if $$arg < $min_ph
374 14 28 if ($is_method) { }
377 11 3 defined $proc ? :
386 0 42 unless eval $body
402 1 49 if (@_ % 2 != 0)
409 28 21 if exists $args{'before'}
410 28 20 if exists $args{'around'}
411 29 18 if exists $args{'after'}
413 0 46 if (%args)
437 0 46 unless my $modified = eval $context . "sub{\n\t\t\t\$_->(\@_) for \@before;\n\t\t\tif(wantarray){ # list context\n\t\t\t\tmy \@ret = \$code->(\@_);\n\t\t\t\t\$_->(\@_) for \@after;\n\t\t\t\treturn \@ret;\n\t\t\t}\n\t\t\telsif(defined wantarray){ # scalar context\n\t\t\t\tmy \$ret = \$code->(\@_);\n\t\t\t\t\$_->(\@_) for \@after;\n\t\t\t\treturn \$ret;\n\t\t\t}\n\t\t\telse{ # void context\n\t\t\t\t\$code->(\@_);\n\t\t\t\t\$_->(\@_) for \@after;\n\t\t\t\treturn;\n\t\t\t}\n\t\t}"
456 4 42 if $initializer
469 6 49 unless (@_)
472 2 47 unless ($props_ref)
477 3 44 unless is_string($name) and exists $valid_modifiers{$name}
481 32 12 if (@subs)
482 9 23 if ($name eq 'after') { }
489 11 20 if ($name eq 'around')
497 12 31 if defined wantarray
518 7 67 if ref $expected
521 62 5 defined $t ? :
527 1 87 unless defined $opt_list
530 6 3 ref $opt_list->{$_} ? :
10 77 if is_hash_ref($opt_list)
533 3 83 unless is_array_ref($opt_list)
541 1 82 if (defined $validator and not $vh || is_array_ref($validator) || is_string($validator))
549 3 113 unless is_string($name)
551 2 111 if ($require_unique and $seen{$name}++)
555 28 83 if ($i == $#$opt_list) { }
2 81 elsif (not defined $$opt_list[$i + 1]) { }
63 18 elsif (ref $$opt_list[$i + 1]) { }
560 8 55 $vh ? :
59 52 if (defined $value and defined($vh ? $validator = $must_be->{$name} : $validator))
561 6 53 unless (__is_a($value, $validator))
574 1 56 unless $opt_list