| line |
!l |
l&&!r |
l&&r |
condition |
|
135
|
3564 |
3 |
2 |
defined $quo and length $quo |
|
138
|
2 |
3325 |
242 |
defined $quo and $quo =~ /^[ \t]/ |
|
139
|
4 |
3033 |
290 |
defined $esc and $esc =~ /^[ \t]/ |
|
149
|
11976 |
418 |
35 |
defined $sep and length $sep |
|
151
|
12397 |
14 |
18 |
defined $quo and length $quo |
|
189
|
92 |
904 |
8 |
@_ > 0 and ref $_[0] ne "HASH" |
|
212
|
1 |
6 |
2718 |
/^[a-z]/ and exists $def_attr{$_} |
|
214
|
21 |
2496 |
201 |
defined $attr{$_} and /_char$/ |
|
232
|
964 |
4 |
21 |
$quote_aliased and defined $attr{'quote_char'} |
|
249
|
623 |
325 |
6 |
defined $self->{'callbacks'} and ref $self->{'callbacks'} ne "HASH" |
|
255
|
944 |
2 |
8 |
defined $\ and not exists $attr{'eol'} |
|
358
|
6 |
6 |
6 |
defined $quote && length $quote |
|
403
|
5 |
328 |
21 |
defined $sep && length $sep |
|
475
|
0 |
913 |
62 |
$self and $f |
|
|
913 |
57 |
5 |
$self and $f and ref $f |
|
|
970 |
0 |
5 |
$self and $f and ref $f and ref $f eq "CODE" |
|
513
|
0 |
13 |
89 |
$self and $f |
|
|
13 |
81 |
8 |
$self and $f and ref $f |
|
|
94 |
2 |
6 |
$self and $f and ref $f and ref $f eq "CODE" |
|
689
|
29 |
4 |
8 |
@_ == 1 && ref $_[0] eq 'HASH' |
|
695
|
4 |
10 |
24 |
$cbk =~ /^[\w.]+$/ and ref $cb->{$cbk} eq "CODE" |
|
723
|
66 |
4 |
1753 |
$self and ref $self |
|
|
1 |
108 |
1644 |
UNIVERSAL::isa($self, __PACKAGE__) and exists $self->{'_ERROR_DIAG'} |
|
|
70 |
108 |
1645 |
$self and ref $self and (UNIVERSAL::isa($self, __PACKAGE__) and exists $self->{'_ERROR_DIAG'}) |
|
730
|
0 |
1580 |
64 |
exists $self->{'_ERROR_SRC'} and $self->{'diag_verbose'} |
|
733
|
7 |
1347 |
290 |
$diag[0] and $self->{'callbacks'} |
|
|
1347 |
280 |
10 |
$diag[0] and $self->{'callbacks'} and $self->{'callbacks'}{'error'} |
|
738
|
10 |
298 |
36 |
$diag[0] and $diag[0] != 2012 |
|
743
|
3 |
1 |
32 |
$self and ref $self |
|
750
|
16 |
0 |
16 |
$self->{'diag_verbose'} and $self->{'_ERROR_INPUT'} |
|
756
|
18 |
11 |
0 |
@c >= 11 and $c[10] |
|
|
11 |
0 |
0 |
@c >= 11 and $c[10] and ref $c[10] eq "HASH" |
|
760
|
0 |
0 |
0 |
exists $hints->{'autodie'} and $hints->{'autodie'} |
|
|
0 |
0 |
0 |
exists $hints->{'guard Fatal'} and not exists $hints->{'no Fatal'} |
|
816
|
3 |
1 |
8 |
ref $self->{'_FFLAGS'} and $idx >= 0 |
|
|
4 |
1 |
7 |
ref $self->{'_FFLAGS'} and $idx >= 0 and $idx < @{$self->{'_FFLAGS'};} |
|
823
|
1 |
1 |
9 |
ref $self->{'_FFLAGS'} and $idx >= 0 |
|
|
2 |
1 |
8 |
ref $self->{'_FFLAGS'} and $idx >= 0 and $idx < @{$self->{'_FFLAGS'};} |
|
849
|
1 |
1 |
1395 |
@_ > 0 && $self->Combine(\$str, \@_, 0) |
|
874
|
6 |
205 |
1732 |
defined $str and $self->Parse($str, $fields, $fflags) |
|
893
|
315 |
236 |
138 |
@keys == 1 and not defined $keys[0] |
|
895
|
315 |
9 |
227 |
@keys == 1 and ref $keys[0] eq "ARRAY" |
|
902
|
544 |
1 |
1 |
$self->{'_BOUND_COLUMNS'} and @keys != @{$self->{'_BOUND_COLUMNS'};} |
|
928
|
330 |
0 |
1 |
defined $args{'munge'} and not defined $args{'munge_column_names'} |
|
948
|
2 |
0 |
324 |
defined $hdr and $hdr ne "" |
|
978
|
144 |
0 |
0 |
$ebcdic and $enc eq "utf-ebcdic" |
|
996
|
0 |
313 |
1 |
$hdr and $hdr =~ s/\Asep=(\S)([\r\n]+)//i |
|
1051
|
20 |
7 |
5 |
@refs == 1 and not defined $refs[0] |
|
1056
|
24 |
2 |
1 |
$self->{'_COLUMN_NAMES'} and @refs != @{$self->{'_COLUMN_NAMES'};} |
|
1075
|
2 |
1 |
2 |
@{$fr;} == 1 and !defined($fr->[0]) || $fr->[0] eq '' |
|
1092
|
0 |
33 |
1 |
@f == 1 && !defined($f[0]) |
|
1114
|
1 |
19 |
38 |
defined $spec and $spec =~ /^ \s*
\x23 ? \s* # optional leading #
( row | col | cell ) \s* =
( $qc # for row and col
| $qd , $qd (?: - $qs , $qs)? # for cell (ranges)
(?: ; $qd , $qd (?: - $qs , $qs)? )* # and cell (range) lists
) \s* $/xi |
|
1136
|
3 |
27 |
2 |
$brr ne "*" and $brr == 0 || $brr < $tlr |
|
|
2 |
26 |
2 |
$brc ne "*" and $brc == 0 || $brc < $tlc |
|
1155
|
6 |
39 |
15 |
$brr ne "*" and $r > $brr |
|
1165
|
6 |
17 |
10 |
$max_row ne "*" and $r == $max_row |
|
1189
|
28 |
33 |
3 |
$r > $#r and $eod |
|
1212
|
340 |
1 |
4 |
@_ == 1 and ref $_[0] eq "HASH" |
|
1263
|
304 |
36 |
1 |
exists $attr{'out'} && !$attr{'out'} |
|
1268
|
0 |
301 |
40 |
$in and $out |
|
|
301 |
28 |
12 |
$in and $out and !ref($in) || ref $in eq 'GLOB' || ref \$in eq 'GLOB' |
|
|
28 |
12 |
0 |
$in and $out and !ref($in) || ref $in eq 'GLOB' || ref \$in eq 'GLOB' and !ref($out) || ref $out eq 'GLOB' || ref \$out eq 'GLOB' |
|
1281
|
6 |
0 |
1 |
$cboi and not $cbai |
|
1303
|
8 |
20 |
5 |
ref $out and 'ARRAY' eq ref $out || 'HASH' eq ref $out |
|
|
8 |
7 |
13 |
ref $out and "SCALAR" ne ref $out |
|
|
7 |
0 |
7 |
ref $out and "SCALAR" eq ref $out |
|
|
7 |
0 |
7 |
ref $out and "SCALAR" eq ref $out and defined ${$out;} |
|
|
0 |
5 |
2 |
ref $out and "SCALAR" eq ref $out and defined ${$out;} and ${$out;} eq "skip" |
|
1340
|
16 |
2 |
0 |
not ref $in and $] < "5.008005" |
|
1358
|
1007 |
1 |
6 |
exists $attr{$f} and not exists $attr{$t} |
|
1363
|
0 |
2 |
0 |
defined $_[1][0] and $_[1][0] ne "" |
|
1368
|
321 |
14 |
3 |
defined $fltr and not ref $fltr |
|
|
335 |
0 |
3 |
defined $fltr and not ref $fltr and exists $fltr{$fltr} |
|
1381
|
319 |
8 |
11 |
$kh and not ref $kh |
|
|
327 |
3 |
8 |
$kh and not ref $kh and $kh =~ /^(?:1|yes|true|internal|auto)$/i |
|
1412
|
1 |
332 |
13 |
@_ and ref $_[0] eq __PACKAGE__ |
|
1424
|
307 |
7 |
24 |
$c->{'out'} and not $c->{'sink'} |
|
1426
|
6 |
14 |
4 |
not $hdrs and ref $c->{'kh'} |
|
|
20 |
0 |
4 |
not $hdrs and ref $c->{'kh'} and $c->{'kh'} == \@internal_kh |
|
1457
|
1 |
0 |
10 |
ref $hdrs || $hdrs eq 'auto' and @hdrs |
|
1476
|
10 |
160 |
3 |
not defined $c->{'hd_s'} and $c->{'attr'}{'sep_char'} |
|
1478
|
13 |
157 |
3 |
not defined $c->{'hd_s'} and $c->{'attr'}{'sep'} |
|
1496
|
4 |
3 |
5 |
ref $key eq "ARRAY" and @{$key;} > 1 |
|
1502
|
2 |
1 |
2 |
ref $val eq "ARRAY" and @{$val;} > 0 |
|
1505
|
278 |
11 |
6 |
$c->{'fltr'} and grep /\D/, keys %{$$c{"fltr"};} |
|
1511
|
0 |
0 |
53 |
$h && @$h |
|
1534
|
214 |
0 |
10 |
$c->{'kh'} and $hdrs |
|
1593
|
119 |
0 |
168 |
@row1 and not $c->{'hd_c'} |
|
|
119 |
164 |
4 |
@row1 and not $c->{'hd_c'} and not ref $hdrs |
|
1600
|
0 |
269 |
18 |
$ref and $c->{'cbai'} || $c->{'cboi'} |
|
1613
|
5 |
0 |
2 |
$ro eq "SCALAR" and ${$c->{'out'};} eq "skip" |
|
1620
|
0 |
0 |
4 |
@{$c->{'out'};} and @$ref |
|
|
0 |
2 |
2 |
@{$c->{'out'};} and @$ref and ref $c->{'out'}[0] eq ref $ref->[0] |
| line |
l |
!l&&r |
!l&&!r |
condition |
|
188
|
2 |
1002 |
1 |
ref $proto || $proto |
|
551
|
1 |
1 |
9 |
not defined $v or $v eq "" |
|
629
|
1 |
1 |
7 |
not defined $v or $v eq "" |
|
640
|
1 |
1 |
6 |
not defined $v or $v eq "" |
|
760
|
0 |
0 |
0 |
exists $hints->{'autodie'} and $hints->{'autodie'} or exists $hints->{'guard Fatal'} and not exists $hints->{'no Fatal'} |
|
829
|
1 |
7 |
11 |
$idx < 0 or not ref $self->{'_FFLAGS'} |
|
1075
|
0 |
2 |
0 |
$self->{'_FFLAGS'}[0] ||= CSV_FLAGS_IS_MISSING() |
|
|
0 |
2 |
1 |
!defined($fr->[0]) || $fr->[0] eq '' |
|
1094
|
0 |
11 |
0 |
$self->eol_type || $\ || $/ |
|
1136
|
2 |
2 |
32 |
$tlr == 0 or $tlc == 0 |
|
|
0 |
2 |
27 |
$brr == 0 || $brr < $tlr |
|
|
4 |
2 |
30 |
$tlr == 0 or $tlc == 0 or $brr ne "*" and $brr == 0 || $brr < $tlr |
|
|
0 |
2 |
26 |
$brc == 0 || $brc < $tlc |
|
|
2 |
2 |
28 |
$tlr == 0 or $tlc == 0 or $brr ne "*" and $brr == 0 || $brr < $tlr or $brc ne "*" and $brc == 0 || $brc < $tlc |
|
1144
|
2 |
17 |
9 |
$brr eq "*" or $brr > $max_row |
|
1155
|
17 |
15 |
45 |
$r < $tlr or $brr ne "*" and $r > $brr |
|
1156
|
33 |
3 |
9 |
not defined $lc or $tlc < $lc |
|
1176
|
9 |
14 |
2 |
$to ||= $from |
|
1179
|
2 |
1 |
22 |
$from <= 0 or $to < $from |
|
1189
|
3 |
17 |
44 |
$r > $#r and $eod or $r[$r] |
|
1198
|
27 |
99 |
279 |
$_ > $#r && $eod || $r[$_] |
|
1237
|
2 |
15 |
325 |
delete $attr{'keep_headers'} || delete $attr{'keep_column_names'} || delete $attr{'kh'} |
|
1242
|
2 |
2 |
331 |
delete $attr{'callbacks'}{'after_in'} || delete $attr{'after_in'} || delete $attr{'callbacks'}{'after_parse'} || delete $attr{'after_parse'} |
|
1244
|
2 |
2 |
340 |
delete $attr{'callbacks'}{'before_out'} || delete $attr{'before_out'} |
|
1246
|
4 |
12 |
328 |
delete $attr{'callbacks'}{'on_in'} || delete $attr{'on_in'} |
|
1248
|
0 |
1 |
343 |
delete $attr{'callbacks'}{'on_error'} || delete $attr{'on_error'} |
|
1251
|
4 |
6 |
334 |
delete $attr{'sep_set'} || delete $attr{'seps'} |
|
1253
|
42 |
119 |
183 |
delete $attr{'detect_bom'} || delete $attr{'bom'} |
|
1255
|
7 |
1 |
336 |
delete $attr{'munge'} || delete $attr{'munge_column_names'} |
|
1261
|
338 |
3 |
3 |
delete $attr{'in'} || delete $attr{'file'} |
|
1263
|
36 |
1 |
303 |
delete $attr{'out'} || delete $attr{'file'} |
|
1265
|
3 |
22 |
316 |
ref $in eq "CODE" or ref $in eq "ARRAY" |
|
1268
|
12 |
0 |
28 |
!ref($in) || ref $in eq 'GLOB' || ref \$in eq 'GLOB' |
|
|
7 |
0 |
5 |
!ref($out) || ref $out eq 'GLOB' || ref \$out eq 'GLOB' |
|
1270
|
2 |
0 |
5 |
ref $out or "GLOB" eq ref \$out |
|
1303
|
4 |
1 |
20 |
'ARRAY' eq ref $out || 'HASH' eq ref $out |
|
|
13 |
1 |
14 |
ref $out and "SCALAR" ne ref $out or "GLOB" eq ref \$out |
|
1323
|
7 |
0 |
18 |
defined $attr{'eol'} or defined $fho |
|
1330
|
3 |
21 |
316 |
ref $in eq "CODE" or ref $in eq "ARRAY" |
|
|
16 |
2 |
268 |
ref $in or "GLOB" eq ref \$in |
|
1351
|
338 |
0 |
0 |
$fh or $sink |
|
1376
|
15 |
323 |
0 |
delete $attr{'csv'} || 'Text::CSV_XS'->new(\%attr) |
|
1428
|
1 |
9 |
11 |
@{$in;} == 0 or ref $in->[0] eq "ARRAY" |
|
1457
|
5 |
5 |
1 |
ref $hdrs || $hdrs eq 'auto' |
|
1473
|
10 |
155 |
149 |
defined $c->{'hd_s'} or defined $c->{'hd_b'} |
|
|
165 |
6 |
143 |
defined $c->{'hd_s'} or defined $c->{'hd_b'} or defined $c->{'hd_m'} |
|
|
161 |
2 |
141 |
defined $c->{'hd_s'} or defined $c->{'hd_b'} or defined $c->{'hd_m'} or defined $c->{'hd_c'} |
|
1496
|
15 |
5 |
7 |
not ref $key or ref $key eq "ARRAY" and @{$key;} > 1 |
|
1502
|
3 |
2 |
3 |
not ref $val or ref $val eq "ARRAY" and @{$val;} > 0 |
|
1507
|
52 |
1 |
171 |
not ref $hdrs or ref $hdrs eq "CODE" |
|
1516
|
0 |
3 |
0 |
$hdr{$_} || $_ |
|
1527
|
0 |
3 |
0 |
$hdr{$_} || $_ |
|
1531
|
0 |
3 |
0 |
$hdr{$_} || $_ |
|
1600
|
12 |
11 |
264 |
$c->{'cbai'} || $c->{'cboi'} |
|
1642
|
2 |
266 |
4 |
$last_err ||= $csv->{'_ERROR_DIAG'} |