Condition Coverage

blib/lib/Iterator/Flex/Factory.pm
Criterion Covered Total %
condition 18 36 50.0


and 3 conditions

line !l l&&!r l&&r condition
92 93 0 0 $class ne "Iterator::Flex::Base" and not &Module::Runtime::require_module($class)
98 93 0 0 defined($par = $ipar{'_name'}) and Ref::Util::XS::is_ref($par)
157 0 0 93 not %ipar_k and not %gpar_k
209 196 11 1 $action_on_failure ne "throw" and $action_on_failure ne "return"
350 38 0 44 $want[0] eq $have[0] and defined $want[1] && defined $have[1] && $want[1] eq $have[1] || !(defined $want[1] || defined $have[1])

or 2 conditions

line l !l condition
86 0 93 $ipar{'class'} // "Iterator::Flex::Base"
103 73 20 $gpar{'input_exhaustion'} // ["return", undef]
207 12 196 delete $mpars->{'action_on_failure'} // "throw"
248 0 1 ref $obj || 'SCALAR'
280 0 0 $gpar{'input_exhaustion'} //= ["return", undef]
333 72 10 $gpar->{'exhaustion'} // ["return", undef]

or 3 conditions

line l !l&&r !l&&!r condition
285 0 0 0 can_meth($obj, 'next') || overload::Method($obj, '<>', undef, undef)
346 82 0 0 $registry[13] // throw_failure("internal", "registered Iterator::Flex iterator doesn't have a registered exhaustion")
350 0 44 0 defined $want[1] && defined $have[1] && $want[1] eq $have[1] || !(defined $want[1] || defined $have[1])