Branch Coverage

blib/lib/MCE/Stream.pm
Criterion Covered Total %
branch 126 244 51.6


line true false branch
30 0 0 if $INC{'threads.pm'}
53 10 0 unless ($_pkg =~ /^MCE::/)
64 0 0 if $_arg eq "max_workers"
65 0 0 if $_arg eq "chunk_size"
66 0 0 if $_arg eq "tmp_dir"
67 0 0 if $_arg eq "freeze"
68 0 0 if $_arg eq "thaw"
69 0 0 if $_arg eq "init_relay"
70 0 0 if $_arg eq "use_threads"
71 0 0 if $_arg eq "default_mode"
73 0 0 if $_arg eq "fast"
76 0 0 if ($_arg eq "sereal")
77 0 0 if (shift() eq 0)
89 0 10 if $_p->{'DEFAULT_MODE'} ne "grep" and $_p->{'DEFAULT_MODE'} ne "map"
95 0 10 unless $_p->{'CHUNK_SIZE'} eq "auto"
113 185 194 if (defined $_gather_ref) { }
115 185 185 unless exists $_tmp{$_order_id}
131 51 51 if (defined $_mce->{'user_tasks'}[$_task_id + 1])
139 0 102 if exists $_params->{'task_end'} and ref $_params->{'task_end'} eq "CODE"
153 0 0 if (defined $_pkg and $_id eq "${$}.$_tid")
163 9 0 if defined $_[0] and $_[0] eq "MCE::Stream"
166 0 9 ref $_[0] eq 'HASH' ? :
169 0 9 if ref $_params->{$_pkg}{'input_data'} eq "HASH"
174 0 9 defined wantarray ? :
180 24 0 if defined $_[0] and $_[0] eq "MCE::Stream"
181 18 6 defined $_[0] ? :
183 10 14 if ($_pkg eq 'MCE') { }
6 8 elsif ($_MCE->{$_pkg} and $_MCE->{$_pkg}{'_init_pid'} eq "${$}.$_tid") { }
187 6 0 if $_MCE->{$_pkg}{'_spawned'}
197 6 0 if (defined $_queue->{$_pkg})
217 0 20 if defined $_[0] and $_[0] eq "MCE::Stream"
219 0 20 ref $_[0] eq 'HASH' ? :
222 20 0 if (defined(my $_p = $_params->{$_pid})) { }
223 0 20 if exists $_p->{'input_data'}
224 0 20 if exists $_p->{'sequence'}
232 10 30 if ($_r eq "" or $_r eq "SCALAR" or $_r =~ /^(?:GLOB|FileHandle|IO::)/)
238 10 10 if (defined $_file and ref $_file eq '' and $_file ne '') { }
10 0 elsif (ref $_file eq 'SCALAR' or ref($_file) =~ /^(?:GLOB|FileHandle|IO::)/) { }
239 0 10 unless -e $_file
240 0 10 unless -r $_file
241 0 10 unless -f $_file
251 20 0 if (defined $_pos)
266 0 10 if defined $_[0] and $_[0] eq "MCE::Stream"
268 0 10 ref $_[0] eq 'HASH' ? :
271 10 0 if (defined(my $_p = $_params->{$_pid})) { }
272 0 10 if exists $_p->{'sequence'}
273 0 10 if exists $_p->{'input_data'}
274 0 10 if exists $_p->{'_file'}
283 0 15 if ($_r eq "" or $_r =~ /^Math::/ or $_r eq "HASH" or $_r eq "ARRAY")
286 10 0 if ($_r eq '' or $_r =~ /^Math::/) { }
0 0 elsif ($_r eq 'HASH') { }
0 0 elsif ($_r eq 'ARRAY') { }
306 0 10 unless exists $_params->{$_pid}{'sequence'}
307 0 10 unless defined $_begin
309 0 10 unless defined $_end
314 10 0 if (defined $_pos)
329 0 59 if defined $_[0] and $_[0] eq "MCE::Stream"
331 30 29 caller() eq 'MCE::Stream' ? :
334 0 59 if (ref $_[0] eq "HASH" and not exists $_[0]{'code'})
335 0 0 unless defined $_params->{$_pid}
343 25 34 if ref $_[0] eq "ARRAY"
347 25 34 if (defined $_aref) { }
359 108 10 if (ref $_[0] eq 'CODE') { }
364 0 0 unless exists $_[0]{'code'} or exists $_[0]{'mode'}
366 10 0 exists $_[0]{'code'} ? :
367 10 0 exists $_[0]{'mode'} ? :
369 0 10 unless (ref $_code[-1] eq "CODE")
372 0 10 if ($_mode[-1] ne "grep" and $_mode[-1] ne "map")
377 118 0 if (defined(my $_p = $_params->{$_pid}))
379 118 0 ref $_p->{'task_name'} eq 'ARRAY' ? :
381 118 0 ref $_p->{'max_workers'} eq 'ARRAY' ? :
386 28 90 if not defined $_prev_c->{$_pid}[$_pos] or $_prev_c->{$_pid}[$_pos] != $_code[$_pos]
390 28 90 if not defined $_prev_m->{$_pid}[$_pos] or $_prev_m->{$_pid}[$_pos] ne $_mode[$_pos]
393 28 90 if $_prev_n->{$_pid}[$_pos] ne $_name[$_pos]
394 28 90 if $_prev_w->{$_pid}[$_pos] ne $_wrks[$_pos]
404 0 59 if (defined $_prev_c->{$_pid}[$_pos])
413 0 59 unless scalar @_code
420 10 49 if (@_ == 1 and $_r =~ /^(?:ARRAY|HASH|SCALAR|GLOB|FileHandle|IO::|Iterator::)/)
421 0 10 if $_r eq "HASH"
426 59 0 if (defined(my $_p = $_params->{$_pid}))
428 0 59 if exists $_p->{'max_workers'} and ref $_p->{'max_workers'} ne "ARRAY"
430 29 30 if defined $_input_data or scalar @_
431 0 59 if exists $_p->{'user_func'}
432 0 59 if exists $_p->{'user_tasks'}
433 0 59 if exists $_p->{'use_slurpio'}
434 0 59 if exists $_p->{'bounds_only'}
435 0 59 if exists $_p->{'gather'}
438 59 0 if (@_code > 1 and $_max_workers > 1)
446 0 59 defined $_p->{'init_relay'} || defined $_def->{$_pkg}{'INIT_RELAY'} ? :
451 59 0 if (defined(my $_p = $_params->{$_pid}))
452 20 39 if (exists $_p->{'_file'}) { }
455 0 39 if exists $_p->{'input_data'}
463 14 45 if ($_init_mce or not exists $_queue->{$_pid}) { }
464 0 14 if defined $_MCE->{$_pid}
465 14 0 unless defined $_queue->{$_pid}
484 14 0 if (defined(my $_p = $_params->{$_pid}))
488 0 28 if $_ eq "sequence_run"
489 14 14 if $_ eq "max_workers" and ref $_p->{'max_workers'} eq "ARRAY"
490 14 0 if $_ eq "task_name" and ref $_p->{'task_name'} eq "ARRAY"
491 0 0 if $_ eq "input_data"
492 0 0 if $_ eq "chunk_size"
493 0 0 if $_ eq "task_end"
496 0 0 unless exists $MCE::_valid_fields_new{$_}
504 0 70 if exists $_def->{$_pkg}{uc $_k} and not exists $_opts{$_k}
512 45 0 if (defined(my $_p = $_params->{$_pid}))
518 0 675 if exists $_p->{$_k}
525 30 29 if (defined $_input_data) { }
19 10 elsif (scalar @_) { }
535 10 0 if (defined $_params->{$_pid} and exists $_params->{$_pid}{'sequence'})
540 10 0 if (exists $_params->{$_pid}{'sequence_run'})
551 0 51 unless ($_MCE->{$_pid}{'_spawned'})
556 26 25 unless defined $_aref
594 65 18 if (ref $_chunk_ref) { }
597 56 9 $_mode_ref->[-1] eq 'map' ? :
602 18 0 $_mode_ref->[-1] eq 'map' ? :
605 83 0 @{$_code_ref;} > 1 ? :
610 14 0 @{$_code_ref;} > 1 ? :
627 0 0 unless defined $_chunk
634 0 0 $_mode_ref->[$_pos] eq 'map' ? :
646 14 0 if (@{$_code_ref;} > 1)
658 22 83 unless defined $_chunk
665 83 0 $_mode_ref->[0] eq 'map' ? :