Condition Coverage

blib/lib/Math/Logic/Predicate.pm
Criterion Covered Total %
condition 42 84 50.0


and 2 conditions

line l !l condition
345 0 0 $$cptr{'context'} eq 'or' and $res and $dir and $$state{'stack'}[0]{'skip'} = 1

and 3 conditions

line !l l&&!r l&&r condition
152 0 0 17 $rule and $$self{'pred'}{$rule}
250 3 0 9 defined $bind and $$drule{'args'}[$i] ne '_'
3 5 4 defined $bind and $$drule{'args'}[$i] ne '_' and not exists $$dcon{'pad'}{$$drule{'args'}[$i]}
279 0 10 2 $$proc{'context'} eq 'bind' and $$proc{'code'}
337 13 0 0 $$cptr{'context'} eq 'or' and $$state{'stack'}[0]{'skip'}
13 0 0 $$cptr{'context'} eq 'or' and $$state{'stack'}[0]{'skip'} and not $dir
340 13 0 0 $$cptr{'context'} eq 'sub' and not $dir
13 0 0 $$cptr{'context'} eq 'sub' and not $dir and not $$state{'stack'}[0]{'last'}
342 13 0 0 $$cptr{'context'} eq 'sub' and not $res
345 13 0 0 $$cptr{'context'} eq 'or' and $res
13 0 0 $$cptr{'context'} eq 'or' and $res and $dir
411 0 0 0 $res and $$state{'stack'}[1]{'last'}
416 0 0 0 $$cptr{'next'} and $$cptr{'next'}{'context'} eq 'or' || $$cptr{'next'}{'context'} eq 'sub'
429 11 2 0 $$cptr{'next'} and $$cptr{'next'}{'context'} eq 'or' || $$cptr{'next'}{'context'} eq 'sub'

or 2 conditions

line l !l condition
50 72 0 $context ||= 'true'
154 6 11 $$lse{'pred_stack'} ||= [$$self{'pred'}{$rule}]
155 6 11 $$lse{'iter_stack'} ||= [0]
156 6 11 $$lse{'bind_stack'} ||= [0]
157 6 11 $$lse{'pos'} ||= 0
253 1 3 $$dcon{'stack'}[0]{'bindings'} ||= []
274 6 11 $state ||= {'pad', {}, 'stack', []}
280 1 1 $$state{'stack'}[0]{'bindings'} ||= []

or 3 conditions

line l !l&&r !l&&!r condition
32 10 1 0 $$self{'parser'} ||= 'Parse::RecDescent'->new($GRAMMAR)
64 0 0 72 $context eq 'true' or $context eq 'false'
0 6 66 $context eq 'true' or $context eq 'false' or $context eq 'bind'
65 0 0 0 $$ret{'next'}{'fail'} ||= $ret
124 8 0 2 $$proc{'context'} eq 'true' or $$proc{'context'} eq 'false'
215 4 0 3 $p eq '_' || $ind eq '_' || exists $$pad{$p}
416 0 0 0 $$cptr{'next'}{'context'} eq 'or' || $$cptr{'next'}{'context'} eq 'sub'
429 0 0 2 $$cptr{'next'}{'context'} eq 'or' || $$cptr{'next'}{'context'} eq 'sub'