Condition Coverage

blib/lib/Hash/Wrap.pm
Criterion Covered Total %
condition 59 95 62.1


and 3 conditions

line !l l&&!r l&&r condition
54 59 0 175 defined $_->[0] && defined $_->[1]
0 0 117 defined $candidate and 2 == grep({defined $_->[0] && defined $_->[1] ? $_->[0] eq $_->[1] : 1;} [$reftype->[0], builtin::reftype($candidate)], [$reftype->[1], builtin::reftype($$candidate)])
102 72 0 4 exists $REGISTRY{$hash_class}{'predicate_template'} and $key =~ /^has_(.*)/
165 68 3 1 not !$args->{'-base'} and exists $args->{'-class'}
178 7 0 2 $reftype ne "SCALAR" and $reftype ne "VSTRING"
7 1 1 $reftype ne "SCALAR" and $reftype ne "VSTRING" and $reftype ne "REF"
1 0 1 $reftype ne "SCALAR" and $reftype ne "VSTRING" and $reftype ne "REF" and $reftype ne "GLOB"
1 0 1 $reftype ne "SCALAR" and $reftype ne "VSTRING" and $reftype ne "REF" and $reftype ne "GLOB" and $reftype ne "LVALUE"
0 0 1 $reftype ne "SCALAR" and $reftype ne "VSTRING" and $reftype ne "REF" and $reftype ne "GLOB" and $reftype ne "LVALUE" and $reftype ne "REGEXP"
510 56 9 1 exists $args->{'-copy'} and exists $args->{'-clone'}
652 206 0 14 defined $closures and %$closures

or 2 conditions

line l !l condition
557 8 57 $args->{'-immutable'} || undef
3 54 $args->{'-lockkeys'} || undef
682 14 26 15 shift() // {}
10 1 2 shift() // {}
3 0 2 shift() // {}
3 0 0 shift() // {}
1 0 0 shift() // {}
8 1 0 shift() // {}
1 0 0 shift() // {}
1 0 0 shift() // {}
0 2 shift() // {}
1 0 shift() // {}

or 3 conditions

line l !l&&r !l&&!r condition
36 0 0 0 ref $class || $class
42 11 0 0 builtin::blessed($object) || ref $object || $object
136 5 27 0 *{$method;}{'CODE'} || _generate_accessor($CLASS, $class, $key)
167 0 0 71 $ENV{'HASH_WRAP_DEBUG'} // delete $args->{'-debug'}
173 1 70 0 delete $args->{'-into'} // caller
246 1 2 13 $attr->{'-class'} eq "-target" or $attr->{'-class'} eq "-caller"
596 7 20 37 $args->{'-as_scalar_ref'} or $args->{'-as_return'}
20 1 36 $args->{'-as_scalar_ref'} or $args->{'-as_return'} or $args->{'-lexical'}
625 64 0 0 _compile_from_tpl(\$code, \%dict, keys %closures ? \%closures : ()) || _croak_about_code(\$code, "constructor (as $name) subroutine")
635 0 0 0 $error //= $@