line |
true |
false |
branch |
146
|
9 |
48 |
unless *{$_;}{'CODE'} |
180
|
0 |
168 |
if ($name eq 'strict') { } |
|
0 |
168 |
elsif ($name eq '$[') { } |
|
0 |
168 |
elsif ($name eq 'integer' or $name eq 'bytes' or $name eq 'utf8') { } |
|
0 |
168 |
elsif ($name eq 're') { } |
|
0 |
168 |
elsif ($name eq 'warnings') { } |
|
56 |
112 |
elsif ($name eq 'warning_bits') { } |
|
56 |
56 |
elsif ($name eq 'hint_bits') { } |
|
56 |
0 |
elsif ($name eq '%^H') { } |
183
|
0 |
0 |
if ($val eq 'none') |
189
|
0 |
0 |
if ($val eq 'all') { } |
|
0 |
0 |
elsif (ref $val) { } |
205
|
0 |
0 |
unless $val == 0 |
213
|
0 |
0 |
if ($val) { } |
223
|
0 |
0 |
if ($val eq 'none') |
229
|
0 |
0 |
if ($val eq 'all') { } |
|
0 |
0 |
elsif (ref $val) { } |
242
|
0 |
0 |
if ($val eq 'none') |
248
|
0 |
0 |
if (ref $val) { } |
255
|
0 |
0 |
unless defined $warning_bits |
275
|
0 |
56 |
if (@_) |
298
|
0 |
0 |
if ($pre eq '{' and $cx < 1) |
312
|
4 |
4441 |
if ($name eq 'concat' and $op->first->name eq 'concat') |
316
|
26 |
1352 |
if ($name eq 'null' and B::class($op) eq 'UNOP' and $op->first->name =~ /^(and|x?or)$/ and B::Deparse::null($op->first->sibling)) |
327
|
2656 |
1759 |
$op->flags & 64 ? : |
344
|
1338 |
58 |
if (scalar @_ > 5) |
346
|
1310 |
28 |
if scalar @_ > 6 |
351
|
5 |
1391 |
if ($op->flags & 64 and $flags & 2) |
355
|
1322 |
74 |
if ($flags & 1) |
359
|
0 |
1396 |
if ($flags & 4 and not $lhs->{'text'} =~ /^(my|our|local|)[\@\(]/) |
367
|
1322 |
74 |
if ($flags & 1) { } |
410
|
0 |
0 |
if $cv |
414
|
0 |
0 |
if ($op->name eq 'null' and $op->flags & 128) { } |
424
|
0 |
0 |
$multiline ? : |
426
|
0 |
0 |
$multiline ? : |
447
|
1 |
5 |
if ($op->flags & 64 and $op->first->name ne 'concat') |
471
|
0 |
2089 |
if (@texts) |
477
|
1286 |
803 |
if ($stash ne $self->{'curstash'}) |
489
|
169 |
1920 |
if ($warnings->isa('B::SPECIAL') and $$warnings == 4) { } |
|
1920 |
0 |
elsif ($warnings->isa('B::SPECIAL') and $$warnings == 5) { } |
|
0 |
0 |
elsif ($warnings->isa('B::SPECIAL')) { } |
502
|
1288 |
801 |
if (defined $warning_bits and !defined($self->{'warnings'}) || $self->{'warnings'} ne $warning_bits) |
511
|
0 |
2089 |
$] < 5.008009 ? : |
513
|
1337 |
752 |
if ($self->{'hints'} != $hints) |
522
|
2089 |
0 |
if ($] > 5.009) |
526
|
2089 |
0 |
if ($] >= 5.015006) |
530
|
8 |
2081 |
if ($from != $to) |
531
|
4 |
4 |
if ($to == $feature::hint_mask) { } |
532
|
4 |
0 |
if ($self->{'hinthash'}) { } |
552
|
2089 |
0 |
if ($] > 5.009) |
566
|
0 |
2089 |
if ($self->{'linenums'} and $cx != 0.5) |
568
|
0 |
0 |
if $self->{'opaddr'} |
573
|
0 |
2089 |
if ($op->label) |
587
|
14 |
1469 |
if ($left{assoc_class($op)} and $left{assoc_class($left)} and $left{assoc_class($op)} == $left{assoc_class($left)}) { } |
636
|
0 |
0 |
if ($op->first->name eq 'stub' or $op->first->name eq 'nextstate') |
657
|
0 |
0 |
if @body |
672
|
0 |
593 |
if (scalar @args == 1 and substr($args[0], 0, 1) eq '(' and substr($args[0], -1, 1) eq ')') { } |
683
|
0 |
1483 |
if ($right{assoc_class($op)} and $right{assoc_class($right)} and $right{assoc_class($op)} == $right{assoc_class($right)}) { } |
700
|
277 |
0 |
if scalar @{$exprs;} |
703
|
333 |
0 |
if (defined $expr) |
745
|
14 |
10 |
if ($type eq 'const') { } |
|
0 |
10 |
elsif ($type eq 'concat') { } |
|
0 |
10 |
elsif ($type eq 'join') { } |
746
|
0 |
14 |
if $op->private & 0 |
755
|
0 |
0 |
unless $last =~ /^[A-Z\\\^\[\]_?]/ and $first =~ s/([\$\@])\^$/$1{^}/ |
769
|
0 |
0 |
if ($type eq 'uc') { } |
|
0 |
0 |
elsif ($type eq 'lc') { } |
|
0 |
0 |
elsif ($type eq 'ucfirst') { } |
|
0 |
0 |
elsif ($type eq 'lcfirst') { } |
|
0 |
0 |
elsif ($type eq 'quotemeta') { } |
|
0 |
0 |
elsif ($type eq 'fc') { } |
792
|
20 |
0 |
if ($op->flags & 4) { } |
795
|
0 |
20 |
unless (B::Deparse::null($kid->sibling)) |
801
|
0 |
20 |
if ($pushmark_op) |
806
|
0 |
0 |
unless $word_end > 0 |
815
|
0 |
0 |
if $op->flags & 128 |
827
|
0 |
0 |
if $self->{'unquote'} |
842
|
0 |
1 |
unless ($array->name eq $padname) |
849
|
1 |
0 |
if ($array_name) { } |
850
|
1 |
0 |
unless ($array_name =~ /->\z/) |
851
|
0 |
1 |
if ($array_name eq '#') { } |
858
|
1 |
0 |
if $left |
867
|
0 |
0 |
if (is_subscriptable($array)) { } |
891
|
8 |
0 |
if (B::class($op) eq 'UNOP') { } |
|
0 |
0 |
elsif (B::class($op) =~ /^(SV|PAD)OP$/) { } |
894
|
0 |
8 |
if ($name =~ /^-/) |
926
|
0 |
0 |
if ($enterop->flags & 128) { } |
959
|
0 |
8 |
if ($op->flags & 64) |
962
|
0 |
0 |
if (B::Deparse::is_scope($indir_op)) { } |
|
0 |
0 |
elsif ($indir_op->name eq 'const' and $indir_op->private & 64) { } |
964
|
0 |
0 |
if ($indir_info->{'text'} eq '') { } |
981
|
0 |
8 |
if ($name eq 'sort' and $op->private & 3) { } |
|
0 |
15 |
elsif ($name eq 'sort' and $op->private & 16) { } |
983
|
0 |
0 |
$op->private & 16 ? : |
995
|
1 |
7 |
if (not $fmt and $kid == $firstkid and $name eq 'sort' and $firstkid->name =~ /^enter(xs)?sub/) { } |
1003
|
8 |
0 |
if (defined $expr) |
1012
|
0 |
8 |
if ($name eq 'sort' and $op->private & 4) { } |
1018
|
0 |
8 |
if ($name eq 'sort' and $op->private & 8) |
1027
|
0 |
8 |
if ($fmt ne '' and $name eq 'sort') { } |
|
1 |
7 |
elsif (not $fmt and $name eq 'sort' and not B::Deparse::null($op->first->sibling) and $op->first->sibling->name eq 'entersub') { } |
1056
|
7 |
0 |
if (@exprs) { } |
1058
|
0 |
7 |
if ($self->func_needs_parens($exprs[0]{'text'}, $cx, 5)) { } |
1071
|
0 |
0 |
if 7 < $cx |
1095
|
2623 |
1768 |
if $kid->name eq 'pushmark' |
1108
|
0 |
0 |
$kid->name eq 'pushmark' ? : |
1121
|
0 |
107 |
if ($cx < 1 and B::Deparse::is_scope($right) and $blockname and $self->{'expand'} < 7) { } |
|
35 |
72 |
elsif ($cx < 1 and $blockname and not $self->{'parens'} and $self->{'expand'} < 7) { } |
|
24 |
48 |
elsif ($cx > $lowprec and $highop) { } |
1163
|
274 |
27 |
unless ($kid) |
1172
|
24 |
277 |
if (B::Deparse::null($kid)) |
1174
|
2 |
22 |
$nollafr ? : |
1182
|
74 |
203 |
if (defined $proto && $proto =~ /^;?\*/ || $name eq 'select' and $kid->name eq 'rv2gv' and not $kid->private & 128) { } |
1194
|
0 |
277 |
if ($name eq 'chmod' and $first->{'text'} =~ /^\d+$/) |
1204
|
0 |
277 |
if not $parens || $nollafr and substr($first->{'text'}, 0, 1) eq '(' |
1208
|
6 |
1 |
if (defined $proto and $proto =~ /^\*\*/ and $kid->name eq 'rv2gv' and not $kid->private & 128) |
1217
|
0 |
277 |
if ($name eq 'reverse' and $op->private & 8) |
1218
|
0 |
0 |
$parens ? : |
1227
|
4 |
8 |
if ($name =~ /^(system|exec)$/ and $op->flags & 64 and @exprs > 1) |
1233
|
0 |
4 |
if ($parens and $nollafr) { } |
|
4 |
0 |
elsif ($parens) { } |
1249
|
0 |
273 |
if ($parens and $nollafr) { } |
|
244 |
29 |
elsif ($parens) { } |
1260
|
0 |
273 |
if @new_nodes |
1264
|
246 |
27 |
if (@skipped_ops) |
1302
|
3 |
0 |
if ($kid->name eq 'lineseq') { } |
|
0 |
0 |
elsif ($enter->name eq 'enteriter') { } |
|
0 |
0 |
elsif ($kid->name eq 'null') { } |
|
0 |
0 |
elsif ($kid->name eq 'stub') { } |
1306
|
1 |
2 |
if ($kid->last->name eq 'unstack') { } |
1320
|
0 |
0 |
if (B::Deparse::null($var)) { } |
|
0 |
0 |
elsif ($var->name eq 'rv2gv') { } |
|
0 |
0 |
elsif ($var->name eq 'gv') { } |
1321
|
0 |
0 |
if ($enter->flags & 128 and $] < 5.009) { } |
1333
|
0 |
0 |
if ($enter->private & 64) { } |
1349
|
0 |
0 |
if ($ary->name eq 'null' and $enter->private & 2) { } |
|
0 |
0 |
elsif ($enter->flags & 64 and not B::Deparse::null($ary->first->sibling->sibling)) { } |
1371
|
0 |
0 |
unless (B::Deparse::is_state($body->first) or $body->first->name =~ /^(?:stub|leave|scope)$/) |
1409
|
0 |
3 |
if ($$cont_start != $$op and ${$cont_start;} != ${$body->last;}) { } |
1412
|
0 |
0 |
if ($bare) { } |
1427
|
0 |
0 |
if (defined $cond_info and not B::Deparse::is_scope($cont) and $self->{'expand'} < 3) { } |
1431
|
0 |
0 |
defined $init ? : |
1446
|
0 |
3 |
unless defined $body |
1448
|
0 |
3 |
if (defined $init) |
1463
|
0 |
3 |
if (@cont_text) |
1477
|
0 |
0 |
if (B::class($op) eq 'PVOP') { } |
|
0 |
0 |
elsif (B::class($op) eq 'OP') { } |
|
0 |
0 |
elsif (B::class($op) eq 'UNOP') { } |
1488
|
0 |
0 |
if $text =~ /^(?!\d)\w/ |
1540
|
0 |
0 |
if (B::Deparse::is_scope($code_block)) { } |
1571
|
0 |
0 |
if ($self->func_needs_parens($nodes[1]{'text'}, $cx, 5)) { } |
1584
|
0 |
0 |
if ($is_block) { } |
1611
|
0 |
6 |
$] < 5.022 ? : |
1624
|
4 |
2 |
if ($op->flags & 64) { } |
|
0 |
2 |
elsif ($op->name eq 'match' and my $targ = $op->targ) { } |
1642
|
0 |
6 |
if (not B::Deparse::null(my $code_list = $op->code_list)) { } |
|
0 |
6 |
elsif (${$bregexp = $op->pmregexp;} and ${$cv = $bregexp->qr_anoncv;}) { } |
|
1 |
5 |
elsif (not $have_kid) { } |
|
0 |
5 |
elsif ($kid->name ne 'regcomp') { } |
1643
|
0 |
0 |
$op->name eq 'qr' ? : |
1665
|
0 |
0 |
if ($op->name eq 'split') { } |
1676
|
0 |
5 |
if ($matchop->name eq 'regcrest') |
1679
|
4 |
1 |
if ($matchop->name =~ /^(?:match|transr?|subst)\z/ and $matchop->flags & 128) |
1685
|
0 |
6 |
if $pmflags & 33554432 |
1688
|
0 |
6 |
if $matchwords{$flags} |
1690
|
0 |
6 |
if ($pmflags & 1048576) { } |
|
2 |
4 |
elsif ($quote) { } |
1702
|
2 |
4 |
if $quote |
1704
|
4 |
2 |
if ($binop) { } |
1706
|
4 |
0 |
if ($rhs_bound_to_defsv) { } |
1729
|
0 |
0 |
if ($op->flags & 64) |
1739
|
0 |
0 |
if (B::Deparse::null($kid)) { } |
|
0 |
0 |
elsif ($kid->name ne 'regcomp') { } |
1741
|
0 |
0 |
if ($extended) { } |
1753
|
0 |
0 |
if ($matchop->name eq 'regcrest') |
1756
|
0 |
0 |
if ($matchop->name =~ /^(?:match|transr?|subst)\z/ and $matchop->flags & 128) |
1762
|
0 |
0 |
if $pmflags & 33554432 |
1765
|
0 |
0 |
if $matchwords{$flags} |
1767
|
0 |
0 |
if ($pmflags & 1048576) { } |
|
0 |
0 |
elsif ($quote) { } |
1777
|
0 |
0 |
if $quote |
1779
|
0 |
0 |
if ($binop) { } |
1780
|
0 |
0 |
if ($rhs_bound_to_defsv) { } |
1800
|
0 |
0 |
if (ref $expr eq 'ARRAY' and scalar @$expr == 2) { } |
1828
|
78 |
1032 |
if (ref $info and $info->isa('B::DeparseTree::Node')) { } |
1836
|
1056 |
54 |
$op->name =~ /^(gv|rv2)[ash]v$/ ? : |
1838
|
6 |
1104 |
if ($op->private & (128 | $our_intro) and not $self->{'avoid_local'}{$$op}) { } |
1840
|
3 |
3 |
$op->private & 128 ? : |
1841
|
3 |
3 |
if ($our_local eq 'our') |
1844
|
0 |
0 |
unless ($text =~ /^\W(\w+::)*\w+\z/ or utf8::decode($text) and $text =~ /^\W(\w+::)*\w+\z/) |
1850
|
3 |
0 |
if ($] >= 5.024) |
1851
|
0 |
3 |
if ($type = $self->B::Deparse::find_our_type($text)) |
1856
|
0 |
3 |
if (not B::Deparse::want_scalar($op) and $self->func_needs_parens($text, $cx, 16)) { } |
1865
|
14 |
9 |
$is_node ? : |
1876
|
3 |
0 |
if (B::Deparse::want_scalar($op)) { } |
1880
|
0 |
0 |
if (not B::Deparse::want_scalar($op) and $self->func_needs_parens($text, $cx, 16)) { } |
1891
|
73 |
1031 |
if (ref $info and $info->isa('B::DeparseTree::Node')) { } |
1902
|
23 |
4097 |
if ($op->private & 128 and not $self->{'avoid_local'}{$$op}) { } |
1903
|
2 |
21 |
$op->private & 64 ? : |
1906
|
16 |
7 |
if ($forbid_parens or B::Deparse::want_scalar($op)) { } |
1923
|
1 |
7 |
if (&B::DeparseTree::Node::parens_test($self, $cx, $prec)) { } |
1927
|
0 |
1 |
if $cx == 16 |
1938
|
0 |
1 |
if ($prec <= $cx or substr($params, 0, 1) eq '(' or $self->{'parens'}) { } |
1955
|
0 |
260 |
if ($name eq 'umask' and $info->{'text'} =~ /^\d+$/) |
1963
|
3 |
257 |
if ($cx > 16 or $self->{'parens'}) { } |
1973
|
0 |
257 |
if (substr($info->{'text'}, 0, 1) eq '(') { } |
1988
|
46 |
1475 |
$prefix eq '$#' ? : |
1989
|
1 |
1520 |
if not $prefix or $name =~ /::/ |
1996
|
7 |
1513 |
if $name =~ /^(?!\d)\w/ and not $v =~ /^\$[ab]\z/ and not $globalnames{$name} and $self->{'hints'} & $strict_bits{'vars'} and not $self->lex_in_scope($v, 1) or $self->lex_in_scope($v) |
2005
|
0 |
159 |
if ($op->private & 16) { } |
2022
|
0 |
0 |
if (B::class($op) eq 'OP') { } |
|
0 |
0 |
elsif (B::class($op) eq 'COP') { } |
2023
|
0 |
0 |
if ($op->targ == 5) { } |
2035
|
0 |
0 |
if ($self->is_list_older($kid)) { } |
|
0 |
0 |
elsif ($kid->name eq 'enter') { } |
|
0 |
0 |
elsif ($kid->name eq 'leave') { } |
|
0 |
0 |
elsif ($kid->name eq 'scope') { } |
|
0 |
0 |
elsif ($op->targ == 67) { } |
|
0 |
0 |
elsif ($op->targ == 24) { } |
|
0 |
0 |
elsif (not B::Deparse::null($kid->sibling) and $kid->sibling->name eq 'readline' and $kid->sibling->flags & 64) { } |
|
0 |
0 |
elsif (not B::Deparse::null($kid->sibling) and $kid->sibling->name eq 'trans' and $kid->sibling->flags & 64) { } |
|
0 |
0 |
elsif ($op->flags & 128 and $cx < 1 and not $op->targ) { } |
|
0 |
0 |
elsif (not B::Deparse::null($kid->sibling) and $kid->sibling->name eq 'null' and B::class($kid->sibling) eq 'UNOP' and $kid->sibling->first->flags & 64 and $kid->sibling->first->name eq 'rcatline') { } |
2100
|
0 |
2627 |
if ($node->{'parens'}) { } |
|
672 |
1955 |
elsif (exists $node->{'fmt'}) { } |
2104
|
627 |
45 |
if ($node->{'fmt'} =~ /^(.*)%[cCF]/) |
2109
|
1951 |
4 |
if ($node->{'text'} =~ /^(.*)\W/) |
2113
|
2578 |
49 |
if (defined $l) |
2114
|
2526 |
52 |
$l > 0 ? : |
2126
|
1 |
4391 |
if (B::class($op) eq 'OP') { } |
|
0 |
4391 |
elsif (B::class($op) eq 'COP') { } |
2129
|
1 |
0 |
if $op->targ == 5 |
2131
|
0 |
0 |
if $op->targ == 67 |
2138
|
2627 |
1764 |
if ($self->is_list_newer($op)) { } |
|
0 |
1764 |
elsif ($kid->name eq 'enter') { } |
|
0 |
1764 |
elsif ($kid->name eq 'leave') { } |
|
0 |
1764 |
elsif ($kid->name eq 'scope') { } |
|
0 |
1764 |
elsif ($op->targ == 67) { } |
|
4 |
1760 |
elsif ($op->targ == 24) { } |
|
0 |
1760 |
elsif (not B::Deparse::null($kid->sibling) and $kid->sibling->name eq 'readline' and $kid->sibling->flags & 64) { } |
|
0 |
1760 |
elsif (not B::Deparse::null($kid->sibling) and $kid->sibling->name =~ /^transr?\z/ and $kid->sibling->flags & 64) { } |
|
0 |
1760 |
elsif ($op->flags & 128 and $cx < 1 and not $op->targ) { } |
|
0 |
1760 |
elsif (not B::Deparse::null($kid->sibling) and $kid->sibling->name eq 'null' and B::class($kid->sibling) eq 'UNOP' and $kid->sibling->first->flags & 64 and $kid->sibling->first->name eq 'rcatline') { } |
2200
|
2578 |
49 |
if ($position) |
2228
|
0 |
9 |
if ($op->flags & 64) |
2233
|
0 |
9 |
if (B::Deparse::null($right)) { } |
2246
|
1 |
8 |
$dolist ? : |
2248
|
1 |
8 |
if ($dolist) |
2262
|
0 |
9 |
if (@skipped_ops) |
2270
|
0 |
0 |
if ($start >= 0) { } |
2310
|
0 |
0 |
if ($op->flags & 64) |
2317
|
0 |
0 |
if (B::Deparse::null($op->pmreplroot)) { } |
2331
|
0 |
0 |
if ($pmflags & 67108864) { } |
2338
|
0 |
0 |
if (B::Deparse::null($kid)) { } |
2340
|
0 |
0 |
if ($extended) { } |
2350
|
0 |
0 |
if $pmflags & 134217728 |
2351
|
0 |
0 |
if $pmflags & 67108864 |
2354
|
0 |
0 |
if $substwords{$flags} |
2361
|
0 |
0 |
if @other_ops |
2362
|
0 |
0 |
if ($binop) { } |
2379
|
2 |
0 |
if (B::class($op) eq 'LISTOP') { } |
2388
|
0 |
2 |
if $array->name eq $regname or $array->name eq 'null' |
2393
|
0 |
2 |
if ($kid->name eq 'list') { } |
2404
|
0 |
2 |
if $op->name =~ /^kv/i |
2407
|
2 |
0 |
if ($array_info) { } |
2428
|
0 |
18 |
if ($op->flags & 64) { } |
|
0 |
18 |
elsif (my $targ = $op->targ) { } |
2439
|
14 |
4 |
if (B::Deparse::null($op->pmreplroot)) { } |
2453
|
4 |
14 |
if ($pmflags & 67108864) { } |
2459
|
0 |
18 |
if (not B::Deparse::null(my $code_list = $op->code_list)) { } |
|
18 |
0 |
elsif (B::Deparse::null($kid)) { } |
2467
|
1 |
17 |
if $pmflags & 134217728 |
2468
|
4 |
14 |
if $pmflags & 67108864 |
2471
|
0 |
18 |
if $substwords{$flags} |
2476
|
4 |
14 |
if @other_ops |
2479
|
0 |
18 |
if ($binop) { } |
2497
|
233 |
58 |
if ($op->flags & 4) { } |
2499
|
0 |
233 |
unless ($name) |
2504
|
233 |
0 |
unless $builtinname =~ /^CORE::/ |
2505
|
24 |
174 |
if (defined prototype $builtinname and $builtinname ne 'CORE::readline' and prototype($builtinname) =~ /^;?\*/ and $kid->name eq 'rv2gv') |
2512
|
1 |
232 |
if ($nollafr) |
2526
|
8 |
50 |
if $op->flags & 128 |
2541
|
0 |
6 |
if ($flags & 1) { } |
|
0 |
6 |
elsif ($operator eq '-' and $operand->{'text'} =~ /^[a-zA-Z](?!\w)/) { } |
2577
|
0 |
78 |
if (B::class($op) eq 'NULL' or not $op->can('first')) |
2584
|
78 |
0 |
if ($kid->name eq 'gv') { } |
|
0 |
0 |
elsif (B::Deparse::is_scalar($kid)) { } |
2591
|
0 |
0 |
if ($str =~ /^\$([^\w\d])\z/) |
2620
|
4 |
3 |
if $real_block |
2621
|
4 |
3 |
if ($real_block) { } |
2623
|
0 |
4 |
if (B::Deparse::is_miniwhile($kid)) |
2626
|
0 |
0 |
if ($name eq 'and') { } |
|
0 |
0 |
elsif ($name eq 'or') { } |
2651
|
0 |
7 |
if ($cx > 0) { } |
2655
|
0 |
0 |
if (B::Deparse::is_lexical_subs(@kids)) { } |
2672
|
25 |
0 |
if $default and index($str, $default) == -1 |
2677
|
0 |
0 |
if ($q ne 'qr') |
2679
|
0 |
0 |
if $succeed |
2683
|
0 |
0 |
if index($str, $delim) == -1 |
2686
|
0 |
0 |
if ($default) { } |