| line |
true |
false |
branch |
|
46
|
13492 |
276 |
for ( max = ptr + len ; ptr < max; ++ptr ) { |
|
47
|
2 |
13490 |
if ( ! *ptr ) continue; /* skip \0 so we can parse binaries strings */ |
|
48
|
58 |
13432 |
if ( *ptr == line_feed ) continue; /* ignore \r */ |
|
53
|
1144 |
12288 |
if ( found_comment ) { |
|
54
|
83 |
1061 |
if ( *ptr == eol ) found_comment = 0; |
|
58
|
5852 |
6436 |
if ( (need_field == 0 && found_sep) || (need_field && found_sep == need_field) ) { |
|
|
5425 |
427 |
if ( (need_field == 0 && found_sep) || (need_field && found_sep == need_field) ) { |
|
|
6436 |
5425 |
if ( (need_field == 0 && found_sep) || (need_field && found_sep == need_field) ) { |
|
|
193 |
6243 |
if ( (need_field == 0 && found_sep) || (need_field && found_sep == need_field) ) { |
|
59
|
568 |
52 |
if ( *ptr == ' ' || *ptr == '\t' ) continue; |
|
|
3 |
565 |
if ( *ptr == ' ' || *ptr == '\t' ) continue; |
|
60
|
383 |
182 |
if (need_field == 0) found_sep = 0; |
|
67
|
876 |
11357 |
if ( found_eol ) { /* starting a line */ |
|
69
|
845 |
31 |
if ( *ptr == ' ' || *ptr == '\t' || *ptr == line_feed ) |
|
|
837 |
8 |
if ( *ptr == ' ' || *ptr == '\t' || *ptr == line_feed ) |
|
|
0 |
837 |
if ( *ptr == ' ' || *ptr == '\t' || *ptr == line_feed ) |
|
71
|
83 |
754 |
if ( *ptr == comment ) { |
|
85
|
1747 |
10364 |
if ( *ptr == sep ) { |
|
87
|
1137 |
610 |
if (need_field) ++found_sep; |
|
88
|
628 |
1119 |
if ( !end_key ) { |
|
90
|
383 |
245 |
if ( !need_field) found_sep = 1; |
|
93
|
1137 |
610 |
if ( need_field && found_sep == need_field + 2 ) { |
|
|
142 |
995 |
if ( need_field && found_sep == need_field + 2 ) { |
|
98
|
724 |
9640 |
} else if ( *ptr == eol ) { /* only handle the line once we reach a \n */ |
|
125
|
275 |
449 |
__PARSE_STRING_LINE_FIELD |
|
|
133 |
142 |
__PARSE_STRING_LINE_FIELD |
|
|
582 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
724 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
0 |
724 |
__PARSE_STRING_LINE_FIELD |
|
|
600 |
124 |
__PARSE_STRING_LINE_FIELD |
|
|
594 |
6 |
__PARSE_STRING_LINE_FIELD |
|
|
577 |
63 |
__PARSE_STRING_LINE_FIELD |
|
|
535 |
42 |
__PARSE_STRING_LINE_FIELD |
|
|
22 |
513 |
__PARSE_STRING_LINE_FIELD |
|
|
21 |
492 |
__PARSE_STRING_LINE_FIELD |
|
|
3 |
489 |
__PARSE_STRING_LINE_FIELD |
|
|
531 |
63 |
__PARSE_STRING_LINE_FIELD |
|
|
489 |
42 |
__PARSE_STRING_LINE_FIELD |
|
133
|
41 |
235 |
if ( start_key ) { |
|
134
|
0 |
41 |
__PARSE_STRING_LINE_FIELD |
|
|
0 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
41 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
41 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
0 |
41 |
__PARSE_STRING_LINE_FIELD |
|
|
28 |
13 |
__PARSE_STRING_LINE_FIELD |
|
|
28 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
28 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
28 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
0 |
28 |
__PARSE_STRING_LINE_FIELD |
|
|
0 |
28 |
__PARSE_STRING_LINE_FIELD |
|
|
0 |
28 |
__PARSE_STRING_LINE_FIELD |
|
|
28 |
0 |
__PARSE_STRING_LINE_FIELD |
|
|
28 |
0 |
__PARSE_STRING_LINE_FIELD |
|
146
|
294 |
0 |
if ( sv && SvPOK(sv) ) { |
|
|
292 |
2 |
if ( sv && SvPOK(sv) ) { |
|
149
|
2 |
290 |
if ( items > 3 ) |
|
151
|
194 |
96 |
if ( items >= 2 ) { |
|
153
|
194 |
0 |
if ( !SvOK(sv_field) || !looks_like_number(sv_field) ) |
|
|
2 |
192 |
if ( !SvOK(sv_field) || !looks_like_number(sv_field) ) |
|
156
|
3 |
189 |
if ( field < 0 ) |
|
159
|
50 |
235 |
if ( items == 3 ) { |
|
163
|
50 |
0 |
if ( !SvOK(sv_sep) || !SvPOK(sv_sep) ) |
|
|
2 |
48 |
if ( !SvOK(sv_sep) || !SvPOK(sv_sep) ) |
|
166
|
3 |
45 |
if ( sep_len != 1 ) |
|
168
|
43 |
2 |
if ( sep_str[0] == '\n' || sep_str[0] == '\r' || sep_str[0] == '\0' ) |
|
|
42 |
1 |
if ( sep_str[0] == '\n' || sep_str[0] == '\r' || sep_str[0] == '\0' ) |
|
|
1 |
41 |
if ( sep_str[0] == '\n' || sep_str[0] == '\r' || sep_str[0] == '\0' ) |