| line | true | false | branch | 
 
| 352 | 0 | 7 | if $$self{'_fhs'}{"$fh"} | 
 
| 359 | 3 | 4 | if defined $sockopt and 2 == unpack('i', $sockopt) | 
 
| 420 | 0 | 4 | if $fh and not exists $$self{'_fhs'}{"$fh"} | 
 
| 422 | 0 | 4 | $fh ? : | 
 
| 424 | 0 | 4 | $fh ? : | 
 
| 440 | 0 | 0 | unless $fh and exists $$self{'_fhs'}{"$fh"} | 
 
| 459 | 0 | 0 | unless $fh and exists $$self{'_fhs'}{"$fh"} | 
 
| 461 | 0 | 0 | if (@_) | 
 
| 462 | 0 | 0 | if @_ | 
 
| 463 | 0 | 0 | unless $_[0] | 
 
| 482 | 0 | 0 | unless $fh and exists $$self{'_fhs'}{"$fh"} | 
 
| 484 | 0 | 0 | if (@_) | 
 
| 485 | 0 | 0 | if @_ | 
 
| 512 | 0 | 4 | unless $fh and exists $$self{'_fhs'}{"$fh"} | 
 
| 514 | 4 | 0 | if (defined $timeout) { } | 
 
| 555 | 0 | 4 | unless exists $$self{'_timerkeys'}{"$fh"} | 
 
| 587 | 0 | 0 | if ref($fh) =~ /SSL/ and $fh->can('pending') and $fh->pending | 
 
| 593 | 14 | 0 | unless (length $rdready) | 
 
| 594 | 4 | 10 | if (@{$$self{'_timers'};}) | 
 
| 603 | 0 | 14 | unless (defined $numready) | 
 
| 604 | 0 | 0 | if ($! == 4 or $! == 11) { } | 
 
| 612 | 0 | 14 | if $heartbeat | 
 
| 615 | 0 | 20 | unless my $fh = $$self{'_handles'}{$k} | 
 
| 620 | 0 | 20 | unless exists $$self{'_fhs'}{"$fh"} | 
 
| 631 | 10 | 10 | if (fd_isset($rdready, $fh)) | 
 
| 633 | 2 | 8 | if ($$self{'_fhs'}{"$fh"}{'listen'}) { } | 
 
| 637 | 0 | 2 | unless $client | 
 
| 639 | 2 | 0 | if $obj and $obj->can('mux_connection') | 
 
| 642 | 6 | 2 | if ($self->is_udp($fh)) { } | 
 
| 644 | 6 | 0 | if (defined $rv) | 
 
| 652 | 8 | 0 | if (defined $rv and length $data) { } | 
 
| 657 | 8 | 0 | if $obj and $obj->can('mux_input') | 
 
| 661 | 0 | 0 | unless (defined $rv) | 
 
| 663 | 0 | 0 | if $! == 4 or $! == 11 or $! == 11 | 
 
| 666 | 0 | 0 | if $! != 104 | 
 
| 678 | 0 | 0 | if $obj and $obj->can('mux_eof') | 
 
| 682 | 0 | 0 | if (exists $$self{'_fhs'}{"$fh"}) | 
 
| 686 | 0 | 0 | unless exists $$self{'_fhs'}{"$fh"} and length $$self{'_fhs'}{"$fh"}{'outbuffer'} | 
 
| 694 | 0 | 18 | unless exists $$self{'_fhs'}{"$fh"} | 
 
| 696 | 0 | 18 | if (fd_isset($wrready, $fh)) | 
 
| 697 | 0 | 0 | unless (length $$self{'_fhs'}{"$fh"}{'outbuffer'}) | 
 
| 699 | 0 | 0 | if $obj and $obj->can('mux_outbuffer_empty') | 
 
| 706 | 0 | 0 | unless (defined $rv) | 
 
| 711 | 0 | 0 | unless ($! == 11 or $! == 4 or $! == 11) | 
 
| 714 | 0 | 0 | if ($! == 32) { } | 
 
| 715 | 0 | 0 | if $obj and $obj->can('mux_epipe') | 
 
| 725 | 0 | 0 | unless (length $$self{'_fhs'}{"$fh"}{'outbuffer'}) | 
 
| 729 | 0 | 0 | if $obj and $obj->can('mux_outbuffer_empty') | 
 
| 732 | 0 | 0 | if ($$self{'_fhs'}{"$fh"} and $$self{'_fhs'}{"$fh"}{'shutdown'}) | 
 
| 738 | 0 | 0 | unless (length $$self{'_fhs'}{"$fh"}{'inbuffer'}) | 
 
| 748 | 0 | 18 | unless exists $$self{'_fhs'}{"$fh"} | 
 
| 752 | 5 | 7 | if @{$$self{'_timers'};} | 
 
| 771 | 1 | 4 | if $$timer[1] > $time | 
 
| 779 | 0 | 4 | unless exists $$self{'_fhs'}{"$fh"} | 
 
| 782 | 4 | 0 | if $obj and $obj->can('mux_timeout') | 
 
| 844 | 0 | 6 | unless $fh and exists $$self{'_fhs'}{"$fh"} | 
 
| 846 | 0 | 6 | if ($$self{'_fhs'}{"$fh"}{'shutdown'}) | 
 
| 850 | 6 | 0 | if ($self->is_udp($fh)) | 
 
| 851 | 4 | 2 | if (my $udp_peer = $self->udp_peer($fh)) { } | 
 
| 884 | 0 | 0 | unless $fh and exists $$self{'_fhs'}{"$fh"} | 
 
| 886 | 0 | 0 | if ($which == 0 or $which == 2) | 
 
| 894 | 0 | 0 | if ($which == 1 or $which == 2) | 
 
| 897 | 0 | 0 | if (length $$self{'_fhs'}{"$fh"}{'outbuffer'}) { } | 
 
| 905 | 0 | 0 | unless (length $$self{'_fhs'}{"$fh"}{'inbuffer'} or length $$self{'_fhs'}{"$fh"}{'outbuffer'}) | 
 
| 924 | 0 | 0 | unless exists $$self{'_fhs'}{"$fh"} | 
 
| 927 | 0 | 0 | if length $$self{'_fhs'}{"$fh"}{'inbuffer'} | 
 
| 928 | 0 | 0 | if length $$self{'_fhs'}{"$fh"}{'outbuffer'} | 
 
| 937 | 0 | 0 | if $obj and $obj->can('mux_close') | 
 
| 952 | 0 | 7 | unless my $flags = fcntl($fh, 3, 0) | 
 
| 954 | 0 | 7 | unless fcntl $fh, 4, $flags | 2048 |