Condition Coverage

lib/B/DeparseTree/P526.pm
Criterion Covered Total %
condition 23 104 22.1


and 3 conditions

line !l l&&!r l&&r condition
220 0 0 0 @texts > 2 and not grep((!/^-?\d+$/u), @texts)
266 0 0 0 not $allow_arrow and $quoted
394 0 9 0 $op->first and $op->first->flags & 4
453 0 0 0 $op->flags & 4 and B::Deparse::_op_is_or_was($op->first, 134) || B::Deparse::_op_is_or_was($op->first, 148)
0 0 0 $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
0 0 0 $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)
541 0 0 0 $arg->name =~ /^s?refgen$/u and $arg->first->first->name eq 'rv2gv'
555 0 0 0 $arg->name =~ /^s?refgen$/u and not B::Deparse::null($real = $arg->first)
0 0 0 $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'
578 1 0 0 $proto and not $doneok
639 7 0 1 $type eq 'null' and $op->can('first')
7 0 1 $type eq 'null' and $op->can('first') and not B::Deparse::null($op->first)
0 1 0 $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
647 0 0 0 $join_op->name eq 'null' and $join_op->targ == 14
657 0 0 0 $self->pure_string($op->first) && $self->pure_string($op->last)
692 4 0 1 $kid->name eq 'null' and not B::Deparse::null($kid->first)
4 1 0 $kid->name eq 'null' and not B::Deparse::null($kid->first) and $kid->first->name eq 'pushmark'

or 2 conditions

line l !l condition
776 0 0 $op->reflags // 0

or 3 conditions

line l !l&&r !l&&!r condition
183 0 0 0 $cx >= 16 || $self->{'parens'}
257 0 0 0 not $allow_arrow or B::Deparse::is_scalar($array)
413 0 5 4 ($actions & 15) == 8 || ($actions & 15) == 9 || ($actions & 15) == 10 || ($actions & 15) == 11 || ($actions & 15) == 12 || ($actions & 15) == 13
421 2 0 7 ($actions & 15) == 5 or ($actions & 15) == 12
2 5 0 ($actions & 15) == 6 or ($actions & 15) == 13
434 0 0 0 ($actions & 15) == 3 or ($actions & 15) == 10
0 0 0 ($actions & 15) == 2 or ($actions & 15) == 9
0 0 0 ($actions & 15) == 1 or ($actions & 15) == 8
453 0 0 0 B::Deparse::_op_is_or_was($op->first, 134) || B::Deparse::_op_is_or_was($op->first, 148)
0 0 0 B::Deparse::_op_is_or_was($op->first->first, 137) || B::Deparse::_op_is_or_was($op->first->first, 149)
518 0 0 3 $chr eq '@' or $chr eq '%'
528 2 0 0 $chr eq '$' or $chr eq '_'
555 0 0 0 $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'
639 0 0 8 $type eq 'const' or $type eq 'av2arylen'
0 0 8 $type =~ /^(?:[ul]c(first)?|fc)$/u or $type eq 'quotemeta'
0 0 8 B::Deparse::is_scalar($op) or $type =~ /^[ah]elem$/u
0 1 0 $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