Branch Coverage

lib/Sub/Contract/Compiler.pm
Criterion Covered Total %
branch 125 166 75.3


line true false branch
28 10 46 if $$self{'is_enabled'}
41 30 26 if (defined $validator_in)
48 21 35 if (defined $validator_out)
89 41 15 if ($str_pre)
95 32 24 if ($str_post)
109 8 48 if ($cache)
110 7 1 Sub::Contract::Memoizer::_is_profiler_on() ? :
7 1 Sub::Contract::Memoizer::_is_profiler_on() ? :
135 7 1 Sub::Contract::Memoizer::_is_profiler_on() ? :
141 7 1 Sub::Contract::Memoizer::_is_profiler_on() ? :
152 35 21 if (not defined $validator_out) { }
209 10 11 if (scalar @checks == 0) { }
5 6 elsif (scalar @checks == 1) { }
215 0 10 if ($cache)
341 78 89 if (not defined $Sub::Contract::wantarray) { }
5 61 elsif ($Sub::Contract::wantarray) { }
57 0 if (defined $Sub::Contract::wantarray)
22 5 if (not defined $Sub::Contract::wantarray) { }
15 2 elsif ($Sub::Contract::wantarray) { }
17 10 if ($Sub::Contract::wantarray)
0 10 if (defined $Sub::Contract::wantarray)
7 3 if (defined $Sub::Contract::wantarray)
1 27 if (defined $Sub::Contract::wantarray)
1 26 if ($Sub::Contract::wantarray)
68 0 if ($Sub::Contract::wantarray)
0 26 if ($Sub::Contract::wantarray)
0 20 unless (defined $Sub::Contract::wantarray)
20 6 if (grep {ref $_;} @_)
0 6 defined $_ ? :
0 6 $Sub::Contract::wantarray ? :
0 13 if ($Sub::Contract::wantarray) { }
0 13 if ($cache->has($key))
26 0 if (not defined $Sub::Contract::wantarray) { }
0 13 elsif ($Sub::Contract::wantarray) { }
0 1 unless (defined $Sub::Contract::wantarray)
1 12 if (grep {ref $_;} @_)
0 12 defined $_ ? :
0 12 $Sub::Contract::wantarray ? :
0 1 if ($Sub::Contract::wantarray) { }
0 1 if ($cache->has($key))
4 0 if (not defined $Sub::Contract::wantarray) { }
1 0 elsif ($Sub::Contract::wantarray) { }
0 0 unless (defined $Sub::Contract::wantarray)
0 1 if (grep {ref $_;} @_)
0 1 defined $_ ? :
1 0 $Sub::Contract::wantarray ? :
0 2 if ($Sub::Contract::wantarray) { }
0 2 if ($cache->has($key))
8 0 if (not defined $Sub::Contract::wantarray) { }
2 0 elsif ($Sub::Contract::wantarray) { }
1 0 unless (defined $Sub::Contract::wantarray)
1 1 if (grep {ref $_;} @_)
0 1 defined $_ ? :
1 0 $Sub::Contract::wantarray ? :
0 2 if ($Sub::Contract::wantarray) { }
0 2 if ($cache->has($key))
6 0 if (not defined $Sub::Contract::wantarray) { }
0 2 elsif ($Sub::Contract::wantarray) { }
0 1 unless (defined $Sub::Contract::wantarray)
1 1 if (grep {ref $_;} @_)
0 1 defined $_ ? :
0 1 $Sub::Contract::wantarray ? :
343 0 56 if (defined $@ and $@ ne '')
364 15 0 if ($$self{'is_enabled'})
419 0 112 unless $state =~ /^before|after$/
425 18 94 if (defined $check_invariant)
434 9 103 if (defined $check_condition)
435 4 5 if ($state eq 'before') { }
453 51 61 if (defined $validator)
459 30 21 if ($state eq 'before') { }
466 39 12 unless ($validator->has_hash_args)
468 22 17 if ($state eq 'before') { }
469 10 12 $count == 0 ? :
476 10 7 $count == 0 ? :
486 31 20 if ($validator->has_list_args or $validator->has_hash_args)
491 28 16 if (defined $list_checks[$i])
492 20 8 $state eq 'before' ? :
509 12 19 if ($validator->has_hash_args)
512 8 4 $state eq 'before' ? :
521 16 8 if (defined $check)
522 12 4 $state eq 'before' ? :
544 12 39 if ($validator->has_hash_args)
545 8 4 $state eq 'before' ? :