Condition Coverage

blib/lib/Future/Selector.pm
Criterion Covered Total %
condition 15 21 71.4


and 3 conditions

line !l l&&!r l&&r condition
248 16 0 5 $gen and not $f

or 3 conditions

line l !l&&r !l&&!r condition
211 0 3 0 $next_failure //= $f
291 1 32 1 $next_waitf // do { if (my(@i) = @items_needing_regen) { undef @items_needing_regen; foreach my $item (@i) { next unless my $f = $item->gen->(); $f->on_ready(sub { $self->_item_is_ready($item); } ); $item->f = $f; $items{builtin::refaddr($item)} = $item; } ; } ; croak("$self cowardly refuses to sit idle and do nothing") unless keys %items or @next_ready or $next_failure; ($_->f->is_ready or $next_waitf = $_->f->new, last) foreach (values %items); $next_waitf //= "Future"->new; $next_waitf->set_label("Future::Selector next_waitf"); if ($next_failure) { $next_failure->on_fail($next_waitf); undef $next_failure; } elsif (@next_ready) { $next_waitf->done(@next_ready); undef @next_ready; } ; $next_waitf->on_ready(sub { undef $next_waitf; } ) }
304 29 1 3 keys %items or @next_ready
30 0 3 keys %items or @next_ready or $next_failure
307 11 19 0 $_->f->is_ready or $next_waitf = $_->f->new, last
308 19 11 0 $next_waitf //= "Future"->new