| line |
true |
false |
branch |
|
32
|
0 |
11 |
unless $$self{'parser'} ||= 'Parse::RecDescent'->new($GRAMMAR) |
|
35
|
3 |
8 |
if ($auto) { } |
|
41
|
11 |
0 |
if ($ret) |
|
42
|
0 |
11 |
wantarray ? : |
|
52
|
0 |
72 |
unless (grep {$context == $_;} 'true', 'false', 'and', 'or', 'sub', 'bind') |
|
64
|
66 |
6 |
unless ($context eq 'true' or $context eq 'false' or $context eq 'bind') |
|
65
|
0 |
66 |
if $next |
|
74
|
10 |
3 |
if (ref $proc) { } |
|
76
|
0 |
10 |
unless $proc |
|
77
|
0 |
10 |
if $$proc{'rule'} eq '^QUERY' |
|
78
|
0 |
10 |
if $$self{'nonterm'}($$proc{'rule'}) |
|
80
|
10 |
0 |
if (@{$$proc{'args'};}) { } |
|
81
|
6 |
4 |
unless $$self{'pred'}{$$proc{'rule'}} |
|
84
|
0 |
0 |
unless $$self{'pred'}{$$proc{'rule'}} |
|
99
|
2 |
0 |
unless ref $proc |
|
109
|
15 |
10 |
if (local $_ = $$proc{'args'}[$argn]) { } |
|
110
|
3 |
12 |
$$self{'nonterm'}($_) ? : |
|
111
|
15 |
0 |
unless ($$href{$r}) |
|
112
|
10 |
5 |
if ($argn == $#{$$proc{'args'};}) { } |
|
124
|
8 |
2 |
if ($$proc{'context'} eq 'true' or $$proc{'context'} eq 'false') |
|
126
|
0 |
8 |
if grep {$$_{'context'} eq $$proc{'context'};} @$href |
|
129
|
2 |
8 |
if ($$proc{'context'} eq 'bind') |
|
132
|
0 |
2 |
if ($$cptr{'rule'} eq $$proc{'rule'}) |
|
149
|
0 |
17 |
if $$self{'nonterm'}($rule) |
|
151
|
0 |
17 |
if $$lse{'fail'} |
|
152
|
0 |
17 |
unless $rule and $$self{'pred'}{$rule} |
|
166
|
29 |
18 |
unless ($$lse{'pos'} == @{$$proc{'args'};}) |
|
168
|
13 |
16 |
unless $$pred[0]{'^SORT'} |
|
172
|
5 |
42 |
exists $$pad{$p} ? : |
|
174
|
18 |
29 |
if ($$lse{'pos'} == @{$$proc{'args'};}) { } |
|
175
|
8 |
10 |
if $$iter[0] == @{$$pred[0];} |
|
178
|
9 |
20 |
if ($$self{'nonterm'}($p)) { } |
|
179
|
2 |
7 |
if $$iter[0] == @{$$pred[0]{'^SORT'};} |
|
183
|
9 |
11 |
if $$iter[0] >= $len |
|
187
|
19 |
28 |
if ($state eq 'pop') { } |
|
191
|
2 |
17 |
if $free |
|
195
|
7 |
12 |
unless (@$iter) |
|
203
|
10 |
18 |
if (not defined $p) { } |
|
|
7 |
11 |
elsif ($$self{'nonterm'}($p)) { } |
|
204
|
3 |
7 |
if ($delete) { } |
|
215
|
3 |
4 |
if (not $p eq '_' || $ind eq '_' || exists $$pad{$p}) { } |
|
225
|
0 |
11 |
if ($pi) { } |
|
229
|
10 |
1 |
exists $$pred[0]{$p} ? : |
|
243
|
0 |
16 |
unless @{$$srule{'args'};} == @{$$drule{'args'};} |
|
247
|
12 |
10 |
if ($$self{'nonterm'}($$drule{'args'}[$i])) |
|
249
|
6 |
6 |
if $$self{'nonterm'}($bind) |
|
250
|
4 |
5 |
if (defined $bind and $$drule{'args'}[$i] ne '_' and not exists $$dcon{'pad'}{$$drule{'args'}[$i]}) |
|
254
|
3 |
1 |
if $bindtrack |
|
268
|
1 |
16 |
unless ref $proc |
|
276
|
5 |
12 |
if $$proc{'context'} eq 'true' |
|
277
|
0 |
12 |
if $$proc{'context'} eq 'false' |
|
279
|
2 |
10 |
if ($$proc{'context'} eq 'bind' and $$proc{'code'}) |
|
286
|
1 |
1 |
unless ($$proc{'bindcode'}) |
|
314
|
0 |
1 |
if $@ |
|
318
|
2 |
0 |
$res ? : |
|
321
|
3 |
7 |
if ($$state{'stack'}[0]{'ptr'}) { } |
|
322
|
0 |
3 |
if $DEBUG |
|
337
|
0 |
0 |
if $$cptr{'context'} eq 'or' and $$state{'stack'}[0]{'skip'} and not $dir |
|
340
|
0 |
0 |
if $$cptr{'context'} eq 'sub' and not $dir and not $$state{'stack'}[0]{'last'} |
|
342
|
0 |
13 |
if $$cptr{'context'} eq 'sub' and not $res |
|
345
|
0 |
0 |
if $$cptr{'context'} eq 'or' and $res and $dir and $$state{'stack'}[0]{'skip'} = 1 |
|
351
|
0 |
13 |
if ($$cptr{'context'} eq 'true') |
|
357
|
0 |
13 |
if ($$cptr{'context'} eq 'false') |
|
365
|
12 |
1 |
unless ($frame) |
|
367
|
0 |
12 |
if $DEBUG |
|
371
|
5 |
7 |
unless ($try) |
|
372
|
0 |
5 |
if $DEBUG |
|
376
|
0 |
7 |
if $DEBUG |
|
379
|
2 |
5 |
if ($$try{'context'} eq 'bind') |
|
389
|
0 |
8 |
if $DEBUG |
|
392
|
0 |
8 |
unless ($res = !!$self->match($try, $frame, "$indent ")) |
|
393
|
0 |
0 |
if $DEBUG |
|
399
|
8 |
0 |
if $res |
|
405
|
0 |
8 |
if $DEBUG |
|
409
|
0 |
13 |
if ($$cptr{'context'} eq 'sub') { } |
|
410
|
0 |
0 |
if ($dir) |
|
411
|
0 |
0 |
if ($res and $$state{'stack'}[1]{'last'}) { } |
|
|
0 |
0 |
elsif (not $$state{'stack'}[1]{'last'}) { } |
|
416
|
0 |
0 |
if ($$cptr{'next'} and $$cptr{'next'}{'context'} eq 'or' || $$cptr{'next'}{'context'} eq 'sub') |
|
419
|
0 |
0 |
unless $$state{'stack'}[0]{'fail'} > 1 |
|
429
|
0 |
2 |
if ($$cptr{'next'} and $$cptr{'next'}{'context'} eq 'or' || $$cptr{'next'}{'context'} eq 'sub') |
|
432
|
0 |
0 |
unless $$state{'stack'}[0]{'fail'} > 1 |
|
437
|
8 |
5 |
if ($dir) { } |
|
458
|
6 |
4 |
$res ? : |
|
463
|
4 |
0 |
if (exists $$iter{'pad'}{$sym}) { } |