line |
true |
false |
branch |
78
|
171 |
78 |
ref $a ? : |
240
|
615 |
2458 |
unless length $$buffer |
241
|
64 |
3009 |
unless length $$buffer |
243
|
1 |
3008 |
if ($$self{'_start_of_line'} and $$buffer =~ s/^#[ \t]*line[ \t]+([0-9]+)(?:[ \t]+"([^"]+)")?[ \t]*[\r\n]//) |
246
|
1 |
0 |
if $2 |
251
|
0 |
3008 |
if $$buffer =~ s/^([ \t]+)// and defined wantarray |
252
|
536 |
2472 |
if ($$buffer =~ s/^([\r\n])//) |
253
|
0 |
536 |
if defined wantarray |
259
|
19 |
2453 |
if ($$buffer =~ s/^(#.*\n)//) |
260
|
0 |
19 |
if defined wantarray |
267
|
2453 |
0 |
if length $$buffer |
270
|
372 |
2081 |
if ($reset_pos) |
282
|
0 |
0 |
if ($$buffer =~ /^\]|^\^/) |
290
|
0 |
0 |
unless defined $t |
292
|
0 |
0 |
if ($t =~ /^\$/) { } |
|
0 |
0 |
elsif ($t =~ /^[0-9][0-9]\]/) { } |
|
0 |
0 |
elsif ($t =~ /^[0-9]\]/) { } |
|
0 |
0 |
elsif ($t =~ /^\$\w+/) { } |
307
|
0 |
0 |
$w >= 0 ? : |
315
|
0 |
32 |
if ($$buffer =~ s/^->([{[])//) { } |
|
0 |
32 |
elsif ($$buffer =~ s/^{//) { } |
|
3 |
29 |
elsif ($$buffer =~ s/^\[//) { } |
320
|
0 |
0 |
if (not $self->quote->{'interpolated_pattern'}) { } |
|
0 |
0 |
elsif ($$buffer =~ /^[0-9]+,[0-9]*}/) { } |
330
|
3 |
0 |
if (not $self->quote->{'interpolated_pattern'}) { } |
334
|
0 |
0 |
if (_character_class_insanity($self)) { } |
353
|
0 |
0 |
unless length $$buffer |
355
|
0 |
0 |
unless $$buffer =~ s/^(\#|:|[imsx]*\-[imsx]*:?|!|=|<=|)//x |
366
|
0 |
0 |
if ($c eq '\\') { } |
|
0 |
0 |
elsif ($c eq '-') { } |
|
0 |
0 |
elsif ($c eq ']') { } |
369
|
0 |
0 |
if (my $qp = $quoted_pattern{$qc}) |
386
|
249 |
252 |
if @{$self->tokens;} |
391
|
187 |
236 |
unless (length $$buffer) |
392
|
171 |
16 |
if (length $v) { } |
406
|
91 |
1163 |
if ($pattern or $interpolated_pattern) |
407
|
1 |
90 |
if ($c eq '\\') { } |
|
7 |
83 |
elsif ($c eq '(' and not $interpolated_pattern) { } |
|
29 |
54 |
elsif (not $interpolated_pattern and my $special = $pattern_special{$c}) { } |
410
|
0 |
1 |
if (my $qp = $quoted_pattern{$qc}) |
412
|
0 |
0 |
if ($pattern) { } |
422
|
0 |
7 |
if ($nc eq '?') { } |
431
|
11 |
18 |
if ($$special[0] == 76) |
434
|
1 |
10 |
if ($qc eq '?') |
444
|
36 |
1218 |
if ($to_return) |
445
|
24 |
12 |
if (length $v) { } |
453
|
165 |
1053 |
if ($c eq '\\' and $self->quote->{'interpolate'}) { } |
|
29 |
1024 |
elsif ($c =~ /^[\$\@]$/ and $self->quote->{'interpolate'}) { } |
456
|
165 |
0 |
if ($qc =~ /^[a-zA-Z]$/) { } |
|
0 |
0 |
elsif ($qc =~ /^[0-9]$/) { } |
457
|
165 |
0 |
if ($quoted_chars{$qc}) { } |
468
|
0 |
29 |
if ($interpolated_pattern and !length($$buffer) || index("()| \r\n\t", substr($$buffer, 0, 1)) != -1) { } |
|
25 |
4 |
elsif (length $v) { } |
492
|
0 |
21 |
if (@{$self->tokens;}) |
493
|
0 |
0 |
if $self->tokens->[-1][1] != 1 |
499
|
0 |
21 |
if ($flags & 1) { } |
500
|
0 |
0 |
unless $$_ =~ /^[ \t\r\n]*\w/ |
502
|
4 |
17 |
unless $$_ =~ /^[ \t\r\n]*[':\w]/ |
511
|
0 |
342 |
if (@{$self->tokens;}) |
512
|
0 |
0 |
if $self->tokens->[-1][1] != 1 |
518
|
0 |
342 |
if defined $$_ and $$_ =~ /^[ \t\r\n]/ |
521
|
0 |
342 |
unless length $$_ |
524
|
0 |
342 |
if ($$_ =~ s/^\^([A-Z\[\\\]^_?])//x) |
527
|
342 |
0 |
unless $id |
530
|
342 |
0 |
unless $id |
531
|
0 |
341 |
if ($flags & 1) |
535
|
0 |
341 |
defined $1 ? : |
536
|
0 |
341 |
defined $1 ? : |
539
|
0 |
0 |
defined $1 ? : |
545
|
1 |
341 |
unless $id |
548
|
1 |
341 |
unless $id |
551
|
0 |
0 |
if ($$_ =~ s/^(\w+)//x) { } |
559
|
0 |
0 |
if ($$_ =~ s/^}//x) { } |
|
0 |
0 |
elsif ($$_ =~ /^\[|^\{/) { } |
571
|
1 |
341 |
unless $id |
574
|
1 |
341 |
unless $id |
578
|
29 |
312 |
if ($id and $self->quote and $$self{'brackets'} == 0) |
590
|
14 |
233 |
if ($$_ =~ s/^0([xb]?)//x) |
591
|
0 |
14 |
if ($1 eq 'b') { } |
|
0 |
14 |
elsif ($1 eq 'x') { } |
593
|
0 |
0 |
if ($$_ =~ s/^([01]+)//) { } |
603
|
0 |
0 |
if ($$_ =~ s/^([0-9a-fA-F]+)//) { } |
613
|
0 |
14 |
if ($$_ =~ s/^([0-7]+)//) { } |
616
|
0 |
0 |
if $$_ =~ /^[89]/ |
625
|
231 |
16 |
if ($$_ =~ s/^(\d+)//x) |
630
|
0 |
247 |
if $$_ =~ /^\.\./ |
631
|
2 |
245 |
if ($$_ =~ s/^\.(\d*)//x) |
633
|
2 |
0 |
unless length $num |
634
|
2 |
0 |
if length $1 |
636
|
0 |
247 |
if ($$_ =~ s/^[eE]([+-]?\d+)//x) |
663
|
0 |
171 |
if ($op and not $quote_start) |
664
|
0 |
0 |
if ($$_ =~ /^[ \t\r\n]/) |
669
|
0 |
0 |
if $$_ =~ /^=>/ |
670
|
0 |
0 |
unless $$_ =~ s/^([^ \t\r\n])// |
675
|
171 |
0 |
$quote_start eq $quote_end ? : |
681
|
0 |
171 |
unless length $$_ |
682
|
0 |
171 |
unless length $$_ |
687
|
164 |
1208 |
if ($c eq '\\') { } |
|
0 |
1208 |
elsif ($paired and $c eq $quote_start) { } |
|
171 |
1037 |
elsif ($c eq $quote_end) { } |
|
0 |
1037 |
elsif ($is_regex and $c eq '$' || $c eq '@' and $quote_start ne q[']) { } |
690
|
0 |
164 |
if ($qc eq $quote_start or $qc eq $quote_end) { } |
702
|
171 |
0 |
unless $delim_count |
708
|
0 |
0 |
if (length $nc and $nc ne $quote_end and index("()| \r\n\t", $nc) == -1) |
719
|
2 |
169 |
$quote_start eq q['] ? : |
|
0 |
171 |
$op eq 'qw' ? : |
|
0 |
171 |
$op eq 'q' ? : |
|
0 |
171 |
$op eq 'qq' ? : |
724
|
0 |
171 |
$is_regex ? : |
734
|
0 |
171 |
if $$token[1] == 8 |
736
|
0 |
171 |
if (my $op_descr = $regex_flags{$op}) { } |
|
0 |
171 |
elsif ($op eq 'qx' or $op eq '`') { } |
|
0 |
171 |
elsif ($op eq 'qw') { } |
|
0 |
171 |
elsif ($op eq '<') { } |
738
|
0 |
0 |
if ($op eq 's' or $op eq 'tr' or $op eq 'y') |
739
|
0 |
0 |
$quote_end{$quote} ? : |
774
|
0 |
0 |
if ($$_ =~ s/^[ \t]*(['"`])//) { } |
780
|
0 |
0 |
if (not $2) { } |
788
|
0 |
0 |
if ($$_ =~ s/\\//) |
793
|
0 |
0 |
unless $1 |
800
|
0 |
0 |
if (not $lex->stream) { } |
802
|
0 |
0 |
if ($$_ =~ s/(.*)^$end//m) |
811
|
0 |
0 |
if ($line eq $end) |
819
|
0 |
0 |
unless $finished |
821
|
0 |
0 |
$quote eq '`' ? : |
827
|
4700 |
2174 |
if @{$self->tokens;} |
833
|
64 |
2110 |
unless length $$_ |
836
|
247 |
1863 |
if $$_ =~ /^\d|^\.\d/ |
838
|
0 |
1863 |
if $$_ =~ s/^(q|qq|qx|qw|m|qr|s|tr|y)(?=\W)//x |
841
|
0 |
1863 |
if ($$_ =~ /^x[0-9]/ and $expect == 3) |
848
|
321 |
1542 |
if ($$_ =~ s/^(::)?(\w+)//x) |
850
|
0 |
321 |
$1 ? : |
854
|
2 |
319 |
$op || $fqual ? : |
855
|
269 |
50 |
$kw ? : |
|
2 |
319 |
$op ? : |
|
0 |
321 |
$fqual ? : |
860
|
0 |
102 |
if ($no_space and $$_ =~ /^::/ || ($type == 1 || $type == 2) && $$_ =~ /^'\w/) |
864
|
0 |
0 |
defined $1 ? : |
866
|
0 |
0 |
if ($ids =~ s/::$//) |
873
|
37 |
65 |
if ($no_space and $type == 1 and $$_ =~ /^\(/) |
881
|
0 |
321 |
if ($$_ =~ /^=>/) { } |
|
7 |
314 |
elsif ($expect == 1 and $type != 2 and $$_ =~ s/^:(?!:)//) { } |
883
|
0 |
0 |
if ($type == 2 and $self->symbol_table->get_symbol($ids, '*')) { } |
894
|
0 |
314 |
if ($type == 1 and $ids =~ /^__/) |
895
|
0 |
0 |
if ($ids eq '__FILE__') { } |
|
0 |
0 |
elsif ($ids eq '__LINE__') { } |
|
0 |
0 |
elsif ($ids eq '__PACKAGE__') { } |
904
|
2 |
312 |
if ($op) |
906
|
0 |
2 |
if ($op == 65 and $expect != 3) |
914
|
171 |
1371 |
if $$_ =~ s/^(["'`])//x |
916
|
0 |
1371 |
if ($$_ =~ /^ and $expect != 3) |
919
|
0 |
0 |
if ($1 eq '<') { } |
|
0 |
0 |
elsif ($1 eq '<<') { } |
926
|
76 |
1295 |
if $$_ =~ s[^(<=|>=|==|!=|=>|->
|=~|!~
|\.\.|\.\.\.
|\+\+|\-\-
|\+=|\-=|\*=|/=
|\&\&|\|\|)][]x |
932
|
287 |
1008 |
if ($$_ =~ s/^\$//x) |
933
|
1 |
286 |
if ($$_ =~ /^\#/) |
936
|
0 |
1 |
if ($id) { } |
946
|
165 |
843 |
if ($$_ =~ s/^([{}\[\]])//) |
949
|
81 |
84 |
if ($brack eq '[' or $brack eq '{') { } |
952
|
0 |
78 |
if ($brack eq '}' and @{$$self{'pending_brackets'};} and $$self{'pending_brackets'}[-1] == $$self{'brackets'}) |
963
|
3 |
81 |
if ($$self{'brackets'} == 0 and $self->quote) |
969
|
78 |
87 |
if ($brack eq '{') |
970
|
0 |
78 |
if ($expect == 2) { } |
|
17 |
61 |
elsif ($expect == 3) { } |
|
11 |
50 |
elsif ($expect != 4) { } |
974
|
0 |
17 |
if ($$_ =~ s/^[ \t]*([[:alpha:]_]+)[ \t]*\}//) |
982
|
0 |
11 |
if ($$_ =~ /^}/) |
988
|
11 |
0 |
if ($$_ =~ /^([\w"'`])/) |
996
|
0 |
11 |
if ($$_ =~ /^=>/ or $$_ =~ /^,/ and $$next[1] != 1) |
1007
|
0 |
843 |
if ($$_ =~ s[^/][]x) |
1008
|
0 |
0 |
if ($expect == 2 or $expect == 1) { } |
1015
|
0 |
843 |
if ($$_ =~ s/^-([rwxoRWXOezsfdlpSugkbctTBMMAC])(?=\W)//) |
1017
|
0 |
0 |
if ($$_ =~ /^[ \t]*=>/) |
1025
|
843 |
0 |
if $$_ =~ s[^([:;,()\?<>!~=/\\\+\-\.\|^\*%\@&])][]x |
1033
|
0 |
615 |
unless $stream |
1037
|
551 |
64 |
if (defined $l) |