| line |
true |
false |
branch |
|
50
|
144 |
0 |
defined $iterable ? : |
|
70
|
0 |
93 |
unless Ref::Util::XS::is_hashref($in_ipar) |
|
73
|
0 |
93 |
unless Ref::Util::XS::is_hashref($in_gpar) |
|
89
|
0 |
93 |
if Ref::Util::XS::is_ref($class) |
|
92
|
0 |
93 |
if $class ne "Iterator::Flex::Base" and not &Module::Runtime::require_module($class) |
|
98
|
0 |
93 |
if defined($par = $ipar{'_name'}) and Ref::Util::XS::is_ref($par) |
|
106
|
84 |
9 |
Ref::Util::XS::is_arrayref($input_exhaustion) ? : |
|
113
|
72 |
21 |
if ($input_exhaustion[0] eq 'return') { } |
|
|
18 |
3 |
elsif ($input_exhaustion[0] eq 'throw') { } |
|
115
|
0 |
72 |
if @input_exhaustion == 1 |
|
117
|
24 |
48 |
unless $has_output_exhaustion_policy |
|
124
|
2 |
16 |
unless $has_output_exhaustion_policy |
|
129
|
0 |
93 |
unless defined $ipar{'next'} |
|
134
|
219 |
246 |
unless defined(my $code = $ipar{$method}) |
|
136
|
0 |
246 |
unless Ref::Util::XS::is_coderef($code) |
|
141
|
93 |
153 |
if ($method eq 'next') { } |
|
144
|
3 |
90 |
defined $ipar{'_self'} ? : |
|
148
|
0 |
153 |
$class->can($method) ? : |
|
157
|
0 |
93 |
unless (not %ipar_k and not %gpar_k) |
|
159
|
0 |
0 |
if %ipar_k |
|
161
|
0 |
0 |
if %gpar_k |
|
209
|
1 |
207 |
if $action_on_failure ne "throw" and $action_on_failure ne "return" |
|
212
|
1 |
206 |
if %$mpars |
|
217
|
82 |
124 |
if (Ref::Util::XS::is_blessed_ref($obj)) { } |
|
|
69 |
55 |
elsif (Ref::Util::XS::is_arrayref($obj)) { } |
|
|
52 |
3 |
elsif (Ref::Util::XS::is_coderef($obj)) { } |
|
|
0 |
3 |
elsif (Ref::Util::XS::is_globref($obj)) { } |
|
219
|
82 |
0 |
if $obj->isa("Iterator::Flex::Base") |
|
226
|
0 |
69 |
if %$ipars |
|
246
|
2 |
1 |
if $action_on_failure eq "return" |
|
282
|
0 |
0 |
unless (exists $ipar{'next'}) |
|
285
|
0 |
0 |
if ($code = can_meth($obj, 'iter')) { } |
|
|
0 |
0 |
elsif ($code = can_meth($obj, 'next') || overload::Method($obj, '<>', undef, undef)) { } |
|
|
0 |
0 |
elsif ($code = overload::Method($obj, '&{}', undef, undef)) { } |
|
|
0 |
0 |
elsif ($code = overload::Method($obj, '@{}', undef, undef)) { } |
|
308
|
0 |
0 |
if $code |
|
327
|
82 |
0 |
exists $Iterator::Flex::Factory::REGISTRY{builtin::refaddr($obj)} ? : |
|
334
|
10 |
72 |
Ref::Util::XS::is_arrayref($exhaustion) ? : |
|
350
|
44 |
0 |
if $want[0] eq $have[0] and defined $want[1] && defined $have[1] && $want[1] eq $have[1] || !(defined $want[1] || defined $have[1]) |
|
363
|
19 |
209 |
unless defined(my $code = can_meth($obj, $method)) |