Branch Coverage

blib/lib/Devel/TraceCalls.pm
Criterion Covered Total %
branch 139 250 55.6


line true false branch
370 4 1 unless @trace_after_compile
430 0 5 @_ ? :
450 0 0 @_ ? :
451 0 0 if $hide_packages{$pkg}
460 0 120 if ($Devel::TraceCalls::in_caller)
495 6 595 unless (@c)
500 195 400 if (@c and exists $hide_packages{$c[0]} and not $Devel::TraceCalls::show_all) { }
503 82 113 unless defined $callee
510 82 318 if (@caller and defined $callee)
532 4 29 !@_ ? :
87 33 !wantarray ? :
559 0 5 unless ((caller(0))[2])
561 0 0 if $DB_DB
570 1 0 exists $$_{'Subs'} && !exists($$_{'Package'}) && !exists($$_{'Class'}) && !exists($$_{'Objects'}) ? :
1 0 if $is_ref
579 1 0 $is_ref ? :
611 0 0 @_ ? :
643 0 0 @_ ? :
659 0 0 if not $type or $type eq 'Regexp'
661 0 0 if ($type eq 'HASH') { }
0 0 elsif ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'Regexp') { }
0 0 elsif (not exists $builtin_types{$type}) { }
714 0 22 unless defined $trace_points{$sub_id}{'TracePoints'}
735 24 2 if not $is_instance_method or @_ and $$_{'_TraceInstance'} == $_[0]
741 0 22 if (not @tps and $show_skipped_trace_points)
758 1 21 unless @tps
774 0 15 $stringify_blessed_refs ? :
776 23 0 if $$tp{'CaptureArgs'} or $$tp{'LogTo'}
778 5 16 $is_method ? :
792 7 0 if $is_method and $$tp{'CaptureSelf'} || $$tp{'LogTo'}
800 0 21 if ($$tp{'CaptureStack'} or $$tp{'ShowStack'} or $show_stack)
803 2 2 unless @c
810 0 23 if $$tp{'PreCall'}
815 23 0 if ($$tp{'LogTo'})
816 13 10 if (ref $$tp{'LogTo'} eq 'ARRAY') { }
821 0 10 if $$tp{'LogFormatter'}
825 0 10 if (ref $msg eq 'HASH')
830 10 0 unless (defined $msg)
833 0 10 if ($r{'LooksLikeAMethod'})
837 0 0 if (length $object_id > length $sub_name_prefix and index($object_id, $sub_name_prefix) == 0)
845 0 0 exists $$tp{'ObjectId'} && defined $$tp{'ObjectId'} ? :
0 10 if not defined $l{'Object'} and $r{'LooksLikeAMethod'}
850 10 0 unless defined $l{'Sub'}
853 10 0 if (not defined $l{'Args'}) { }
0 0 elsif (ref $l{'Args'}) { }
866 0 0 $is_method ? :
874 8 2 @{$l{'Args'};} ? :
8 2 @{$l{'Args'};} ? :
10 0 if ref $l{'Args'}
890 0 10 if ($$tp{'ShowStack'} or $show_stack)
906 4 6 if $r{'TraceDepth'} - 1 & 1
931 8 14 if ($context) { }
14 0 elsif (defined $context) { }
932 0 8 if $record_call_time
934 0 8 if $record_return_time
937 2 12 if $record_call_time
939 2 12 if $record_return_time
942 0 0 if $record_call_time
945 0 0 if $record_return_time
948 0 22 unless $no_exception
952 2 21 if defined $call_time
953 2 21 if defined $return_time
957 0 351 ref $_ ? :
960 0 23 if $$tp{'PostCall'}
961 0 23 if defined $exception
963 0 0 if ($exception and $$tp{'LogTo'} and ref $$tp{'LogTo'} ne 'ARRAY')
994 0 22 if $exception
995 8 14 $context ? :
1001 5 16 defined $proto ? :
1002 21 0 unless defined $sub_id
1003 0 21 if $name =~ /^Devel::TraceCalls/
1004 0 21 if grep((!defined($_)), $proto, $sub_id)
1022 4 15 index($_, ':') >= 0 ? :
1026 17 2 defined &$name ? :
1028 17 2 $ref ? :
1045 0 8 unless defined $orig_options
1049 0 8 unless defined $package
1050 0 8 unless defined $package
1077 21 0 !defined($pattern) || $_ =~ /$pattern/ ? :
1086 0 1 exists $$_{'Subs'} && !exists($$_{'Package'}) && !exists($$_{'Objects'}) && !exists($$_{'Class'}) ? :
0 3 /(.*)->$/ ? :
0 3 /(.*)::$/ ? :
1 3 ref $_ ? :
1116 0 0 $stringify_blessed_refs ? :
0 12 ref $_ ? :
1132 4 8 if $Devel::TraceCalls::nesting_level & 1
1201 4 18 if (not ref $parm) { }
17 1 elsif (ref $parm eq 'HASH') { }
0 1 elsif (index('GLOB|SCALAR|ARRAY|Regexp|REF|CODE|HASH', ref $parm) < 0) { }
1214 9 8 if (exists $$parm{'Package'}) { }
3 5 elsif (exists $$parm{'Class'}) { }
2 3 elsif (exists $$parm{'Objects'}) { }
3 0 elsif (exists $$parm{'Subs'}) { }
1216 1 8 unless (defined $$parm{'Package'})
1221 6 2 if (exists $$parm{'Subs'}) { }
1222 0 6 unless (defined $$parm{'Subs'})
1226 0 6 unless (ref $$parm{'Subs'} eq 'ARRAY')
1240 0 2 if ref $p eq 'ARRAY'
1253 0 3 unless (defined $$parm{'Class'})
1259 0 3 if (exists $$parm{'Subs'})
1260 0 0 unless (defined $$parm{'Subs'})
1264 0 0 unless (ref $$parm{'Subs'} eq 'ARRAY')
1275 0 0 /:/ ? :
1295 0 2 unless (defined $$parm{'Objects'})
1299 0 2 unless (ref $$parm{'Objects'} eq 'ARRAY')
1306 0 2 if (exists $$parm{'Subs'})
1307 0 0 unless (defined $$parm{'Subs'})
1311 0 0 unless (ref $$parm{'Subs'} eq 'ARRAY')
1322 0 0 /:/ ? :
1340 0 3 unless (defined $$parm{'Subs'})
1377 4 19 if @errors
1381 1 37 if (exists $$tp{'CaptureAll'} and $$tp{'CaptureAll'})
1392 8 0 unless exists $$tp{'LogTo'} or $$tp{'PreCall'} or $$tp{'PostCall'}
1408 0 38 unless defined $sig and length $sig
1413 0 38 if (exists $$self{'TracePoints'}{$sig})
1414 0 0 if (substr($sig, 0, 7) eq '(class)')
1436 11 27 if exists $$tp{'_TraceClass'}
1439 0 38 if ($sub_id =~ /$devel_trace_calls_pkg_re/)
1444 17 21 if ($trace_points{$sub_id}) { }
1453 0 21 if $sub_id =~ /^::/
1454 0 21 if $sub_id =~ /^Devel::TraceCalls/
1469 0 21 unless my $sub = eval _intercept_sub($$tp{'Name'}, $proto)
1487 0 30 if @_ > 1
1505 16 17 if (not @$tps) { }