line |
!l |
l&&!r |
l&&r |
condition |
27
|
0 |
0 |
37 |
'POSIX'->can('PIPE_BUF') and eval {
do {
4096
}
} |
34
|
0 |
0 |
37 |
'POSIX'->can('SSIZE_MAX') and eval {
do {
9223372036854775807
}
} |
49
|
0 |
0 |
37 |
$can_thread &&= $] >= 5.008001 |
50
|
0 |
37 |
0 |
$can_thread &&= $Atomic::Pipe::Config{'useithreads'} |
53
|
37 |
0 |
0 |
$can_thread and $] == 5.01 |
|
37 |
0 |
0 |
$can_thread and $] == 5.01 and $Atomic::Pipe::Config{'ccname'} eq 'gcc' |
|
0 |
0 |
0 |
$can_thread and $] == 5.01 and $Atomic::Pipe::Config{'ccname'} eq 'gcc' and $Atomic::Pipe::Config{'gccversion'} |
55
|
0 |
0 |
0 |
$parts[0] == 4 and $parts[1] >= 8 |
58
|
37 |
0 |
0 |
$can_thread &&= !$INC{'Devel/Cover.pm'} |
163
|
1886 |
17180 |
781127 |
$self->{'in_buffer_size'} and $self->{'in_buffer_size'} >= $size |
166
|
1 |
0 |
2 |
$params{'eof_invalid'} and $self->{'eof'} |
344
|
78 |
24 |
0 |
$self->{'eof'} and keys %{$$self{'state'}{'buffers'};} || keys %{$$self{'state'}{'parts'};} |
352
|
38 |
0 |
7 |
$self->{'eof'} and not $self->{'in_buffer_size'} |
|
38 |
0 |
7 |
$self->{'eof'} and not $self->{'in_buffer_size'} and defined $line |
|
0 |
0 |
7 |
$self->{'eof'} and not $self->{'in_buffer_size'} and defined $line and length $line |
361
|
0 |
0 |
0 |
$self->{'eof'} and not $self->{'in_buffer_size'} |
524
|
5 |
0 |
5 |
$self->{'rh'} and not $self->{'wh'} |
|
0 |
0 |
5 |
$self->{'wh'} and not $self->{'rh'} |
534
|
0 |
0 |
0 |
$r and $w |
576
|
0 |
0 |
4 |
$self->{'rh'} and not $self->{'wh'} |
582
|
0 |
0 |
4 |
$self->{'wh'} and not $self->{'rh'} |
line |
l |
!l |
condition |
112
|
0 |
0 |
$self->{'read_size'} ||= 65536 |
124
|
19091 |
28 |
$self->{'in_buffer_size'} //= 0 |
126
|
0 |
19119 |
$self->{'read_size'} || 65536 |
205
|
4 |
0 |
fcntl($fh, 3, 0) // (return undef) |
319
|
0 |
28 |
$self->{'burst_prefix'} //= "\cN" |
320
|
0 |
28 |
$self->{'burst_postfix'} //= "\cO" |
321
|
0 |
28 |
$self->{'message_key'} //= "\cP" |
333
|
42 |
10 |
$self->{'mixed_buffer'} //= {'lines', '', 'burst', '', 'in_burst', 0, 'in_message', 0, 'do_extra_loop', 0, 'strip_term', 0} |
371
|
10 |
0 |
$self->_get_from_buffer(1, 'eof_invalid', 'EOF before message terminator') // (return) |
378
|
16 |
0 |
$self->_peek_from_buffer(1, 'eof_invalid', 'Incomplete burst data received before end of pipe') // (next) |
387
|
6 |
0 |
$buffer->{'burst'} //= '' |
434
|
0 |
0 |
$buffer->{$key} // '' |
454
|
0 |
0 |
'Win32::API'->new('kernel32', 'PeekNamedPipe', 'NPIPPP', 'N') || die(q[Can't load PeekNamedPipe from kernel32.dll]) |
474
|
0 |
0 |
'Win32::API'->new('kernel32', 'SetNamedPipeHandleState', 'NPPP', 'N') || die(q[Can't load SetNamedPipeHandleState from kernel32.dll]) |
634
|
3 |
32 |
$_[0]{'burst_prefix'} // '' |
|
3 |
32 |
$_[0]{'burst_postfix'} // '' |
651
|
3 |
1 |
$self->fits_in_burst($data) // (return undef) |
653
|
1 |
2 |
$self->{'out_buffer'} //= [] |
675
|
584230 |
100024 |
($params{'blocking'} // $self->{'write_blocking'}) // 1 |
677
|
684254 |
0 |
$self->{'out_buffer'} // (return) |
700
|
5 |
1222947 |
$self->{'burst_prefix'} // '' |
701
|
5 |
1222947 |
$self->{'burst_postfix'} // '' |
709
|
1 |
1222951 |
$! == 32 or 0 |
714
|
822893 |
400058 |
$! == 11 or 0 |
717
|
0 |
0 |
$wrote //= '' |
729
|
2 |
30 |
$self->{'message_key'} // '' |
730
|
2 |
30 |
$self->{'burst_prefix'} // '' |
731
|
2 |
30 |
$self->{'burst_postfix'} // '' |
742
|
2 |
100027 |
$self->{'message_key'} // '' |
759
|
4 |
12 |
$self->{'out_buffer'} //= [] |
769
|
400021 |
20 |
$self->{'out_buffer'} //= [] |
791
|
100028 |
22 |
$self->{'state'} //= {} |
804
|
400077 |
0 |
$self->_get_from_buffer($key->{'size'}, 'eof_invalid', 'EOF before end of message') // (return) |
808
|
300034 |
100043 |
$state->{'parts'}{$tag} //= [] |
line |
l |
!l&&r |
!l&&!r |
condition |
55
|
0 |
0 |
0 |
$parts[0] > 4 or $parts[0] == 4 and $parts[1] >= 8 |
105
|
3 |
3 |
0 |
$self->{'invalid_state'} //= @_ ? shift() : 'Unknown Error' |
194
|
7 |
0 |
14 |
$buffer->{'lines'} or length $buffer->{'lines'} |
195
|
0 |
0 |
14 |
$buffer->{'burst'} or length $buffer->{'burst'} |
254
|
2 |
0 |
0 |
$class->_fh_mode($ifh) // croak(q[Could not determine filehandle mode, please specify '>&' or '<&']) |
|
3 |
2 |
0 |
$mode //= $class->_fh_mode($ifh) // croak(q[Could not determine filehandle mode, please specify '>&' or '<&']) |
255
|
5 |
0 |
0 |
$class->_mode_to_dir($mode) // croak("Invalid mode: $mode") |
267
|
4 |
0 |
0 |
$class->_mode_to_dir($mode) // croak("Invalid mode: $mode") |
327
|
52 |
0 |
0 |
$self->{'rh'} // croak('Not a read handle') |
329
|
52 |
0 |
0 |
$self->{'burst_prefix'} // croak(q[missing 'burst_prefix', not in mixed_data_mode]) |
330
|
52 |
0 |
0 |
$self->{'burst_postfix'} // croak(q[missing 'burst_postfix', not in mixed_data_mode]) |
331
|
52 |
0 |
0 |
$self->{'message_key'} // croak(q[missing 'message_key', not in mixed_data_mode]) |
344
|
1 |
0 |
23 |
keys %{$$self{'state'}{'buffers'};} || keys %{$$self{'state'}{'parts'};} |
346
|
59 |
0 |
42 |
$buffer->{'lines'} or length $buffer->{'lines'} |
405
|
16 |
14 |
31 |
$self->{'in_buffer_size'} or $self->fill_buffer |
454
|
0 |
0 |
0 |
$peek_named_pipe //= 'Win32::API'->new('kernel32', 'PeekNamedPipe', 'NPIPPP', 'N') || die(q[Can't load PeekNamedPipe from kernel32.dll]) |
474
|
0 |
0 |
0 |
$set_named_pipe_handle_state //= 'Win32::API'->new('kernel32', 'SetNamedPipeHandleState', 'NPPP', 'N') || die(q[Can't load SetNamedPipeHandleState from kernel32.dll]) |
535
|
0 |
0 |
0 |
$r or $w |
542
|
0 |
0 |
0 |
$self->{'wh'} // $self->{'rh'} |
551
|
3 |
0 |
0 |
$self->{'wh'} // $self->{'rh'} |
564
|
0 |
0 |
0 |
$val || $ONE_MB |
634
|
0 |
3 |
32 |
$_[0]{'delimiter_size'} //= &bytes::length(scalar($_[0]{'burst_prefix'} // '')) + &bytes::length(scalar($_[0]{'burst_postfix'} // '')) |
641
|
5 |
1 |
2 |
$self->{'delimiter_size'} // $self->delimiter_size |
675
|
0 |
3 |
684251 |
$params{'blocking'} // $self->{'write_blocking'} |
683
|
638714 |
15 |
584223 |
$blocking or defined $got |
703
|
5 |
0 |
1222947 |
length $prefix or length $postfix |
715
|
0 |
0 |
400058 |
not $wrote or $RETRY_ERRNO{0 + $!} |
743
|
99997 |
32 |
0 |
$self->{'adjusted_dsize'} // $self->_adjusted_dsize |
757
|
4 |
0 |
12 |
$self->{'delimiter_size'} // $self->delimiter_size |
768
|
400021 |
2 |
18 |
$self->{'delimiter_size'} // $self->delimiter_size |