Condition Coverage

blib/lib/Devel/Chitin/OpTree.pm
Criterion Covered Total %
condition 76 135 56.3


and 3 conditions

line !l l&&!r l&&r condition
51 0 3938 2751 $$op and $op->flags & 4
59 6665 4 20 B::class($op) eq 'PMOP' and ref $op->pmreplroot
6669 19 1 B::class($op) eq 'PMOP' and ref $op->pmreplroot and ${$op->pmreplroot;}
23 0 1 B::class($op) eq 'PMOP' and ref $op->pmreplroot and ${$op->pmreplroot;} and $op->pmreplroot->isa('B::OP')
84 0 0 329 &blessed($start) and $start->isa('Devel::Chitin::Location')
88 0 329 0 $start->package eq 'main' and $start->subroutine eq 'MAIN'
118 3426 800 558 $b_class eq 'UNOP' and $op->name eq 'null'
4226 0 558 $b_class eq 'UNOP' and $op->name eq 'null' and $op->flags & 4
198 31 0 4 @$children == 2 and $self->first->is_scalar_container
31 0 4 @$children == 2 and $self->first->is_scalar_container and $self->last->op->name eq 'readline'
287 0 0 10 $children and @$children
370 0 0 0 $current_callsite && ${$op->op;} == $current_callsite
392 0 0 891 $siblings and @$siblings
435 0 1048 2070 $op and not $op->is_scopelike
712 638 19 1 $name eq 'unstack' and $sib->op->flags & 128
714 0 0 0 $first and not $first->is_null
0 0 0 $first and not $first->is_null and $first->isa('Devel::Chitin::OpTree::COP')
0 0 0 $first and not $first->is_null and $first->isa('Devel::Chitin::OpTree::COP') and $second
0 0 0 $first and not $first->is_null and $first->isa('Devel::Chitin::OpTree::COP') and $second and not $second->is_null
0 0 0 $first and not $first->is_null and $first->isa('Devel::Chitin::OpTree::COP') and $second and not $second->is_null and $second->op->name eq 'leaveloop'
722 0 0 1 $sibsib && !$sibsib->is_null && $sibsib->op->name eq 'leaveloop'
743 0 0 8 $name eq 'and' || $name eq 'or' and $self->parent->is_null
0 6 2 $name eq 'and' || $name eq 'or' and $self->parent->is_null and $self->parent->pre_siblings
803 166 0 2 $self->is_null && $self->_ex_name eq 'pp_list' && $self->parent->op->name eq 'refgen' && $self->last->is_array_container
815 1353 0 60 $self->op->name eq 'leave' and $top
1353 48 12 $self->op->name eq 'leave' and $top and $top->is_null
48 0 12 $self->op->name eq 'leave' and $top and $top->is_null and $top->class eq 'UNOP'
48 0 12 $self->op->name eq 'leave' and $top and $top->is_null and $top->class eq 'UNOP' and $condition_op = $top->first
0 0 12 $self->op->name eq 'leave' and $top and $top->is_null and $top->class eq 'UNOP' and $condition_op = $top->first and $condition_op->op->name eq 'and' || $condition_op->op->name eq 'or'
0 12 0 $self->op->name eq 'leave' and $top and $top->is_null and $top->class eq 'UNOP' and $condition_op = $top->first and $condition_op->op->name eq 'and' || $condition_op->op->name eq 'or' and $top->first->children->[1]->op->name eq 'lineseq' || $top->first->op->name eq 'lineseq' && !$top->first->children->[1]->is_null && $top->first->children->[1]->op->name eq 'unstack'
845 1345 3 1 $self->op->name eq 'leaveloop' && $self->first->op->name eq 'enteriter' && !$self->first->sibling->first->first->sibling->first->isa('Devel::Chitin::OpTree::COP')
869 348 2 16 $string =~ /[\000-\037]/ and not $params{'regex_x_flag'}

or 3 conditions

line l !l&&r !l&&!r condition
252 18 1208 0 shift() || $self->op->targ
344 0 0 0 $op->is_scalar_container or $op->is_array_container
0 0 0 $op->is_scalar_container or $op->is_array_container or $op->op->name eq 'const'
709 383 1052 683 not $sib or $self->isa('Devel::Chitin::OpTree::COP')
1435 25 658 not $sib or $self->isa('Devel::Chitin::OpTree::COP') or $self->is_null
735 8 4 0 $name eq 'and' or $name eq 'or'
12 0 0 $name eq 'and' or $name eq 'or' or $name eq 'cond_expr'
743 5 3 0 $name eq 'and' || $name eq 'or'
815 6 6 0 $condition_op->op->name eq 'and' || $condition_op->op->name eq 'or'
12 0 0 $top->first->children->[1]->op->name eq 'lineseq' || $top->first->op->name eq 'lineseq' && !$top->first->children->[1]->is_null && $top->first->children->[1]->op->name eq 'unstack'
852 1 4 1344 $self->is_postfix_foreach || $self->_deparse_postfix_while
866 28 2 336 $params{'skip_quotes'} || $self->op->private & 64 && $self->op->name ne 'multiconcat'
937 21 4 33 $newlines or $params{'force_multiline'}