Branch Coverage

lib/B/DeparseTree/P526.pm
Criterion Covered Total %
branch 65 196 33.1


line true false branch
144 24 168 unless *{$_;}{'CODE'}
156 0 0 if ($B::DeparseTree::P526::AUTOLOAD =~ s/^.*::pp_//u) { }
158 0 0 $_[1]->type == 382 ? :
179 0 0 if (($op->flags & 132) == 132) { }
183 0 0 $cx >= 16 || $self->{'parens'} ? :
205 0 32 if ($op->first->name eq 'padav') { }
217 0 33 if ($kid->name eq 'const') { }
231 3 0 if ($array->name eq $padname) { }
0 0 elsif (B::Deparse::is_scope($array)) { }
0 0 elsif ($array->name eq 'gv') { }
0 0 elsif (not $allow_arrow or B::Deparse::is_scalar($array)) { }
236 0 0 $left eq '[' ? :
240 0 0 if (not $allow_arrow and $quoted)
244 0 0 $quoted ? :
276 0 3 if $self->{'parens'}
301 0 0 unless ($array->name eq $padname)
308 0 0 if ($array_name) { }
309 0 0 unless ($array_name =~ /->\z/u)
310 0 0 if ($array_name eq '#') { }
317 0 0 if $left
326 0 0 if (B::Deparse::is_subscriptable($array)) { }
345 5 2 $is_hash ? :
347 1 6 $name eq '#' ? :
0 7 $quoted ? :
358 4 5 if ($op->private & 16) { }
4 1 elsif ($op->private & 32) { }
0 1 elsif ($op->private & 128) { }
368 0 9 if ($op->first and $op->first->flags & 4)
381 0 9 if (($actions & 15) == 0)
395 2 7 if (($actions & 15) == 5 or ($actions & 15) == 12) { }
7 0 elsif (($actions & 15) == 6 or ($actions & 15) == 13) { }
408 0 0 if (($actions & 15) == 3 or ($actions & 15) == 10) { }
0 0 elsif (($actions & 15) == 2 or ($actions & 15) == 9) { }
0 0 elsif (($actions & 15) == 1 or ($actions & 15) == 8) { }
427 0 0 if ($op->flags & 4 and B::Deparse::_op_is_or_was($op->first, 134) || B::Deparse::_op_is_or_was($op->first, 148) and $op->first->flags & 4 and B::Deparse::_op_is_or_was($op->first->first, 137) || B::Deparse::_op_is_or_was($op->first->first, 149))
439 0 0 unless $derefs++
443 0 9 if (($actions & 48) == 0)
447 5 4 $is_hash ? :
449 9 0 if (($actions & 48) == 16) { }
0 0 elsif (($actions & 48) == 32) { }
0 0 elsif (($actions & 48) == 48) { }
451 5 4 if ($is_hash) { }
465 5 4 $is_hash ? :
467 9 0 if ($actions & 64)
481 0 1 if $self->{'noproto'}
492 0 4 if ($chr eq '') { }
1 3 elsif ($chr eq ';') { }
0 3 elsif ($chr eq '@' or $chr eq '%') { }
493 0 0 if @args
501 1 2 unless $arg
502 2 0 if ($chr eq '$' or $chr eq '_') { }
0 0 elsif ($chr eq '&') { }
0 0 elsif ($chr eq '*') { }
0 0 elsif (substr($chr, 0, 1) eq '\\') { }
503 2 0 if (B::Deparse::want_scalar($arg)) { }
509 0 0 if ($arg->name =~ /^(s?refgen|undef)$/u) { }
515 0 0 if ($arg->name =~ /^s?refgen$/u and $arg->first->first->name eq 'rv2gv') { }
519 0 0 if ($real->first->name eq 'gv') { }
529 0 0 if ($arg->name =~ /^s?refgen$/u and not B::Deparse::null($real = $arg->first) and $chr =~ /\$/u && B::Deparse::is_scalar($real->first) || $chr =~ /@/u && class($real->first->sibling) ne 'NULL' && $real->first->sibling->name =~ /^(rv2|pad)av$/u || $chr =~ /%/u && class($real->first->sibling) ne 'NULL' && $real->first->sibling->name =~ /^(rv2|pad)hv$/u || $chr =~ /\*/u && $real->first->name eq 'rv2gv') { }
552 0 1 if $proto and not $doneok
553 0 1 if @args
564 0 1 if ($type eq 'const') { }
0 1 elsif ($type eq 'concat') { }
0 1 elsif ($type eq 'uc') { }
0 1 elsif ($type eq 'lc') { }
0 1 elsif ($type eq 'ucfirst') { }
0 1 elsif ($type eq 'lcfirst') { }
0 1 elsif ($type eq 'quotemeta') { }
0 1 elsif ($type eq 'fc') { }
0 1 elsif ($type eq 'join') { }
565 0 0 if $op->private & 0
600 1 0 unless $ret =~ s/^\$([(|)])\z/\${$1}/u
610 0 8 if B::Deparse::null($op)
613 0 8 if ($type eq 'const' or $type eq 'av2arylen') { }
0 8 elsif ($type =~ /^(?:[ul]c(first)?|fc)$/u or $type eq 'quotemeta') { }
0 8 elsif ($type eq 'join') { }
0 8 elsif ($type eq 'concat') { }
0 8 elsif (B::Deparse::is_scalar($op) or $type =~ /^[ah]elem$/u) { }
1 7 elsif ($type eq 'null' and $op->can('first') and not B::Deparse::null($op->first) and $op->first->name eq 'null' && $op->first->can('first') && !B::Deparse::null($op->first->first) && $op->first->first->name eq 'aelemfast' || $op->first->name =~ /^aelemfast(?:_lex)?\z/u) { }
621 0 0 unless $join_op->name eq 'null' and $join_op->targ == 14
624 0 0 unless $gvop->name eq 'gvsv'
625 0 0 unless '"' eq $self->gv_name($self->gv_or_padgv($gvop))
627 0 0 unless ${$join_op->sibling;} eq ${$op->last;}
628 0 0 unless $op->last->name =~ /^(?:[ah]slice|(?:rv2|pad)av)$/u
658 0 5 if ($kid->name eq 'regcmaybe')
662 0 5 if ($kid->name eq 'regcreset')
666 0 1 if ($kid->name eq 'null' and not B::Deparse::null($kid->first) and $kid->first->name eq 'pushmark')
686 1 4 if ($self->pure_string($kid))
688 0 1 $info->{'other_ops'} ? :
707 0 0 if $kid->name eq 'regcomp'
714 0 0 if ($op->private & 16)
724 0 0 if ($stacked) { }
728 0 0 if ($op->private & 8) { }
734 0 0 unless ref $gv
740 0 0 if ($op->private & 128)
741 0 0 $op->private & 8 ? :
750 0 0 if (($op->reflags // 0) & 536870912)
765 0 0 if ($ary) { }