| line |
true |
false |
branch |
|
37
|
3 |
73 |
if (!*slot) *slot = gv_stashpv(name, GV_ADD);
|
|
81
|
2 |
48 |
if (!stash_IxHash) {
|
|
97
|
50 |
0 |
if (out_idx) *out_idx = idx_hv;
|
|
98
|
50 |
0 |
if (out_keys) *out_keys = keys_av;
|
|
99
|
50 |
0 |
if (out_vals) *out_vals = vals_av;
|
|
160
|
18 |
0 |
SV *sv = newSVpv(v->u.s ? v->u.s : "", 0);
|
|
170
|
0 |
0 |
if (v->type == DMS_OFFSET_DT) { slot = &stash_OffsetDateTime; name = "DMS::OffsetDateTime"; }
|
|
171
|
0 |
0 |
else if (v->type == DMS_LOCAL_DT) { slot = &stash_LocalDateTime; name = "DMS::LocalDateTime"; }
|
|
172
|
0 |
0 |
else if (v->type == DMS_LOCAL_DATE) { slot = &stash_LocalDate; name = "DMS::LocalDate"; }
|
|
174
|
0 |
0 |
SV *inner = newSVpv(v->u.s ? v->u.s : "", 0);
|
|
182
|
50 |
0 |
if (v->u.t.len > 0) {
|
|
186
|
92 |
50 |
for (size_t i = 0; i < v->u.t.len; i++) {
|
|
198
|
8 |
3 |
for (size_t i = 0; i < v->u.l.len; i++) {
|
|
233
|
4 |
0 |
SV *sv = newSVpv(v->u.s ? v->u.s : "", 0);
|
|
243
|
0 |
0 |
if (v->type == DMS_OFFSET_DT) { slot = &stash_OffsetDateTime; name = "DMS::OffsetDateTime"; }
|
|
244
|
0 |
0 |
else if (v->type == DMS_LOCAL_DT) { slot = &stash_LocalDateTime; name = "DMS::LocalDateTime"; }
|
|
245
|
0 |
0 |
else if (v->type == DMS_LOCAL_DATE) { slot = &stash_LocalDate; name = "DMS::LocalDate"; }
|
|
247
|
0 |
0 |
SV *inner = newSVpv(v->u.s ? v->u.s : "", 0);
|
|
254
|
3 |
5 |
if (v->u.t.len > 0) {
|
|
258
|
4 |
8 |
for (size_t i = 0; i < v->u.t.len; i++) {
|
|
278
|
0 |
0 |
for (size_t i = 0; i < v->u.l.len; i++) {
|
|
294
|
41 |
0 |
SV *content_sv = newSVpv(ac->content ? ac->content : "", 0);
|
|
297
|
1 |
40 |
const char *kind = (ac->kind == DMS_COMMENT_BLOCK) ? "block" : "line";
|
|
308
|
61 |
1 |
if (n > 0) av_extend(av, (SSize_t)n - 1);
|
|
309
|
62 |
62 |
for (size_t i = 0; i < n; i++) {
|
|
311
|
1 |
61 |
if (seg->is_index) {
|
|
315
|
61 |
0 |
SV *k = newSVpv(seg->key ? seg->key : "", 0);
|
|
340
|
6 |
0 |
(sf->kind == DMS_STRING_BASIC) ? "basic" :
|
|
341
|
3 |
3 |
(sf->kind == DMS_STRING_LITERAL) ? "literal" :
|
|
344
|
3 |
3 |
if (sf->kind == DMS_STRING_HEREDOC) {
|
|
346
|
3 |
0 |
? "basic_triple" : "literal_triple";
|
|
348
|
3 |
0 |
if (sf->label) {
|
|
356
|
0 |
3 |
if (sf->num_modifiers > 0) av_extend(mods, (SSize_t)sf->num_modifiers - 1);
|
|
357
|
0 |
3 |
for (size_t i = 0; i < sf->num_modifiers; i++) {
|
|
360
|
0 |
0 |
SV *name = newSVpv(mc->name ? mc->name : "", 0);
|
|
367
|
0 |
0 |
if (mc->num_args > 0) av_extend(args, (SSize_t)mc->num_args - 1);
|
|
368
|
0 |
0 |
for (size_t j = 0; j < mc->num_args; j++) {
|
|
369
|
0 |
0 |
if (mc->args[j]) {
|
|
388
|
6 |
15 |
if (lit->is_string_form) {
|
|
389
|
6 |
0 |
if (lit->string_form) {
|
|
393
|
15 |
0 |
if (lit->integer_lit) {
|
|
408
|
6 |
34 |
if (n > 0) av_extend(av, (SSize_t)n - 1);
|
|
409
|
21 |
40 |
for (size_t i = 0; i < n; i++) {
|
|
422
|
19 |
21 |
if (n > 0) av_extend(av, (SSize_t)n - 1);
|
|
423
|
41 |
40 |
for (size_t i = 0; i < n; i++) {
|
|
428
|
21 |
20 |
(ac->position == DMS_COMMENT_LEADING) ? "leading" :
|
|
429
|
21 |
0 |
(ac->position == DMS_COMMENT_INNER) ? "inner" :
|
|
430
|
17 |
4 |
(ac->position == DMS_COMMENT_TRAILING) ? "trailing" :
|
|
480
|
0 |
0 |
if (want <= j->cap) return;
|
|
481
|
0 |
0 |
size_t cap = j->cap ? j->cap : 4096;
|
|
482
|
0 |
0 |
while (cap < want) cap *= 2;
|
|
488
|
0 |
0 |
if (j->len + 1 > j->cap) jbuf_grow(j, 1);
|
|
493
|
0 |
0 |
if (j->len + n > j->cap) jbuf_grow(j, n);
|
|
504
|
0 |
0 |
if (n <= 0) return;
|
|
506
|
0 |
0 |
if (j->len + need > j->cap) jbuf_grow(j, need);
|
|
516
|
0 |
0 |
for (size_t i = 0; i < n; i++) {
|
|
527
|
0 |
0 |
if (c < 0x20) {
|
|
547
|
0 |
0 |
if (v == INT64_MIN) {
|
|
551
|
0 |
0 |
uint64_t u = neg ? (uint64_t)(-v) : (uint64_t)v;
|
|
553
|
0 |
0 |
do { *--p = (char)('0' + (u % 10)); u /= 10; } while (u);
|
|
554
|
0 |
0 |
if (neg) *--p = '-';
|
|
570
|
0 |
0 |
if (v != v) { jbuf_putcstr(j, "nan"); return; }
|
|
571
|
0 |
0 |
if (v > 1.7976931348623157e308) { jbuf_putcstr(j, "inf"); return; }
|
|
572
|
0 |
0 |
if (v < -1.7976931348623157e308) { jbuf_putcstr(j, "-inf"); return; }
|
|
576
|
0 |
0 |
for (int p = 1; p <= 17; p++) {
|
|
579
|
0 |
0 |
if (back == v) { chosen_n = n; break; }
|
|
581
|
0 |
0 |
if (chosen_n == 0) {
|
|
589
|
0 |
0 |
for (int i = 0; i < chosen_n; i++) {
|
|
591
|
0 |
0 |
if (c == '.') has_dot_or_e = 1;
|
|
592
|
0 |
0 |
if (c == 'e' || c == 'E') {
|
|
|
0 |
0 |
if (c == 'e' || c == 'E') {
|
|
597
|
0 |
0 |
if (i < chosen_n && buf[i] == '+') { i++; }
|
|
|
0 |
0 |
if (i < chosen_n && buf[i] == '+') { i++; }
|
|
598
|
0 |
0 |
else if (i < chosen_n && buf[i] == '-') { sign = -1; i++; }
|
|
|
0 |
0 |
else if (i < chosen_n && buf[i] == '-') { sign = -1; i++; }
|
|
600
|
0 |
0 |
while (i < chosen_n && buf[i] == '0') i++;
|
|
|
0 |
0 |
while (i < chosen_n && buf[i] == '0') i++;
|
|
601
|
0 |
0 |
if (i >= chosen_n || buf[i] < '0' || buf[i] > '9') {
|
|
|
0 |
0 |
if (i >= chosen_n || buf[i] < '0' || buf[i] > '9') {
|
|
|
0 |
0 |
if (i >= chosen_n || buf[i] < '0' || buf[i] > '9') {
|
|
607
|
0 |
0 |
if (sign < 0) out[oi++] = '-';
|
|
608
|
0 |
0 |
while (i < chosen_n) out[oi++] = buf[i++];
|
|
613
|
0 |
0 |
if (!has_dot_or_e) {
|
|
647
|
0 |
0 |
jbuf_putcstr(j, v->u.b ? "true" : "false");
|
|
662
|
0 |
0 |
const char *s = v->u.s ? v->u.s : "";
|
|
663
|
0 |
0 |
for (const char *p = s; *p; p++) {
|
|
674
|
0 |
0 |
if (c < 0x20) {
|
|
704
|
0 |
0 |
if (v->u.t.len == 0) { jbuf_puts(j, "{}", 2); return; }
|
|
706
|
0 |
0 |
for (size_t i = 0; i < v->u.t.len; i++) {
|
|
712
|
0 |
0 |
if (i + 1 < v->u.t.len) jbuf_putc(j, ',');
|
|
720
|
0 |
0 |
if (v->u.l.len == 0) { jbuf_puts(j, "[]", 2); return; }
|
|
722
|
0 |
0 |
for (size_t i = 0; i < v->u.l.len; i++) {
|
|
725
|
0 |
0 |
if (i + 1 < v->u.l.len) jbuf_putc(j, ',');
|
|
738
|
0 |
0 |
if (doc->meta) {
|
|
785
|
2 |
0 |
if (d->buf) Safefree(d->buf);
|
|
792
|
0 |
0 |
if (newcap < 256) newcap = 256;
|
|
793
|
0 |
0 |
while (newcap < d->len + need) newcap *= 2;
|
|
799
|
0 |
12 |
if (d->len + 1 > d->cap) dbuf_grow(aTHX_ d, 1);
|
|
804
|
0 |
8 |
if (d->len + n > d->cap) dbuf_grow(aTHX_ d, n);
|
|
811
|
0 |
4 |
if (d->len + need > d->cap) dbuf_grow(aTHX_ d, need);
|
|
812
|
0 |
4 |
for (int i = 0; i < level; i++) {
|
|
823
|
0 |
4 |
if (n == 0) return 0;
|
|
825
|
4 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_'))
|
|
|
4 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_'))
|
|
|
4 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_'))
|
|
|
0 |
4 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_'))
|
|
|
0 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_'))
|
|
827
|
14 |
4 |
for (STRLEN i = 1; i < n; i++) {
|
|
829
|
14 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') ||
|
|
|
14 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') ||
|
|
|
14 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') ||
|
|
|
0 |
14 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') ||
|
|
|
0 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') ||
|
|
|
0 |
0 |
if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') ||
|
|
830
|
0 |
0 |
(c >= '0' && c <= '9') || c == '_' || c == '-'))
|
|
|
0 |
0 |
(c >= '0' && c <= '9') || c == '_' || c == '-'))
|
|
841
|
0 |
0 |
for (STRLEN i = 0; i < n; i++) {
|
|
843
|
0 |
0 |
if (c == '\\' || c == '"' || c < 0x20) { dirty = 1; break; }
|
|
|
0 |
0 |
if (c == '\\' || c == '"' || c < 0x20) { dirty = 1; break; }
|
|
|
0 |
0 |
if (c == '\\' || c == '"' || c < 0x20) { dirty = 1; break; }
|
|
845
|
0 |
0 |
if (d->len + n + 2 > d->cap) dbuf_grow(aTHX_ d, n + 2);
|
|
847
|
0 |
0 |
if (!dirty) {
|
|
850
|
0 |
0 |
if (d->len + 1 > d->cap) dbuf_grow(aTHX_ d, 1);
|
|
854
|
0 |
0 |
for (STRLEN i = 0; i < n; i++) {
|
|
856
|
0 |
0 |
if (d->len + 6 > d->cap) dbuf_grow(aTHX_ d, 6);
|
|
866
|
0 |
0 |
if (c < 0x20) {
|
|
880
|
4 |
0 |
if (is_bare_key_ascii(s, n)) {
|
|
893
|
0 |
0 |
if (!slot || !*slot || !SvROK(*slot)) return NULL;
|
|
|
0 |
0 |
if (!slot || !*slot || !SvROK(*slot)) return NULL;
|
|
|
0 |
0 |
if (!slot || !*slot || !SvROK(*slot)) return NULL;
|
|
895
|
0 |
0 |
if (SvTYPE(rv) != SVt_PVAV) return NULL;
|
|
902
|
0 |
2 |
if (!SvRMAGICAL((SV *)hv)) return NULL;
|
|
906
|
2 |
0 |
if (!mg || !mg->mg_obj) return NULL;
|
|
|
0 |
2 |
if (!mg || !mg->mg_obj) return NULL;
|
|
908
|
0 |
2 |
if (!SvROK(obj)) return NULL;
|
|
910
|
0 |
2 |
if (!SvOBJECT(inner)) return NULL;
|
|
912
|
0 |
2 |
if (!tied_stash) return NULL;
|
|
913
|
0 |
2 |
if (!stash_IxHash) stash_IxHash = gv_stashpv("Tie::IxHash", GV_ADD);
|
|
914
|
0 |
2 |
if (tied_stash != stash_IxHash) return NULL;
|
|
915
|
0 |
2 |
if (SvTYPE(inner) != SVt_PVAV) return NULL;
|
|
935
|
0 |
8 |
if (!SvROK(rv)) return BLE_OTHER;
|
|
937
|
0 |
8 |
if (!SvOBJECT(target)) return BLE_OTHER;
|
|
939
|
0 |
8 |
if (!st) return BLE_OTHER;
|
|
942
|
1 |
7 |
if (!stash_Bool) stash_Bool = gv_stashpv("DMS::Bool", GV_ADD);
|
|
943
|
0 |
8 |
if (st == stash_Bool) return BLE_BOOL;
|
|
944
|
0 |
8 |
if (!stash_Integer) stash_Integer = gv_stashpv("DMS::Integer", GV_ADD);
|
|
945
|
8 |
0 |
if (st == stash_Integer) return BLE_INTEGER;
|
|
946
|
0 |
0 |
if (!stash_Float) stash_Float = gv_stashpv("DMS::Float", GV_ADD);
|
|
947
|
0 |
0 |
if (st == stash_Float) return BLE_FLOAT;
|
|
948
|
0 |
0 |
if (!stash_OffsetDateTime) stash_OffsetDateTime = gv_stashpv("DMS::OffsetDateTime", GV_ADD);
|
|
949
|
0 |
0 |
if (st == stash_OffsetDateTime) return BLE_OFFSET_DT;
|
|
950
|
0 |
0 |
if (!stash_LocalDateTime) stash_LocalDateTime = gv_stashpv("DMS::LocalDateTime", GV_ADD);
|
|
951
|
0 |
0 |
if (st == stash_LocalDateTime) return BLE_LOCAL_DT;
|
|
952
|
0 |
0 |
if (!stash_LocalDate) stash_LocalDate = gv_stashpv("DMS::LocalDate", GV_ADD);
|
|
953
|
0 |
0 |
if (st == stash_LocalDate) return BLE_LOCAL_DATE;
|
|
954
|
0 |
0 |
if (!stash_LocalTime) stash_LocalTime = gv_stashpv("DMS::LocalTime", GV_ADD);
|
|
955
|
0 |
0 |
if (st == stash_LocalTime) return BLE_LOCAL_TIME;
|
|
956
|
0 |
0 |
if (!stash_UnorderedTable) stash_UnorderedTable = gv_stashpv("DMS::UnorderedTable", GV_ADD);
|
|
957
|
0 |
0 |
if (st == stash_UnorderedTable) return BLE_UNORDERED;
|
|
964
|
4 |
0 |
if (!v || !SvOK(v)) {
|
|
|
0 |
4 |
if (!v || !SvOK(v)) {
|
|
970
|
4 |
0 |
if (SvROK(v)) {
|
|
972
|
0 |
4 |
if (k == BLE_BOOL) {
|
|
974
|
0 |
0 |
if (SvTRUE(inner)) dbuf_puts(aTHX_ d, "true", 4);
|
|
978
|
4 |
0 |
if (k == BLE_INTEGER) {
|
|
985
|
0 |
0 |
if (k == BLE_FLOAT) {
|
|
988
|
0 |
0 |
if (Perl_isnan(f)) { dbuf_puts(aTHX_ d, "nan", 3); return; }
|
|
989
|
0 |
0 |
if (Perl_isinf(f)) {
|
|
990
|
0 |
0 |
dbuf_puts(aTHX_ d, f > 0 ? "inf" : "-inf", f > 0 ? 3 : 4);
|
|
|
0 |
0 |
dbuf_puts(aTHX_ d, f > 0 ? "inf" : "-inf", f > 0 ? 3 : 4);
|
|
1001
|
0 |
0 |
if (k >= BLE_OFFSET_DT && k <= BLE_LOCAL_TIME) {
|
|
|
0 |
0 |
if (k >= BLE_OFFSET_DT && k <= BLE_LOCAL_TIME) {
|
|
1009
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVAV) {
|
|
1013
|
0 |
0 |
if (n == 0) { dbuf_puts(aTHX_ d, "[]", 2); return; }
|
|
1015
|
0 |
0 |
for (SSize_t i = 0; i < n; i++) {
|
|
1016
|
0 |
0 |
if (i > 0) dbuf_puts(aTHX_ d, ", ", 2);
|
|
1018
|
0 |
0 |
if (slot) emit_perl_value_inline(aTHX_ d, *slot);
|
|
1023
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) {
|
|
1029
|
0 |
0 |
AV *lite_keys = tied ? NULL : get_lite_keys(aTHX_ hv);
|
|
1031
|
0 |
0 |
if (tied) {
|
|
1033
|
0 |
0 |
AV *keys = slot ? (AV *)SvRV(*slot) : NULL;
|
|
1034
|
0 |
0 |
empty = !keys || av_len(keys) < 0;
|
|
|
0 |
0 |
empty = !keys || av_len(keys) < 0;
|
|
1035
|
0 |
0 |
} else if (lite_keys) {
|
|
1038
|
0 |
0 |
empty = !HvUSEDKEYS(hv);
|
|
1040
|
0 |
0 |
if (empty) { dbuf_puts(aTHX_ d, "{}", 2); return; }
|
|
1043
|
0 |
0 |
if (lite_keys) {
|
|
1045
|
0 |
0 |
for (SSize_t i = 0; i < n; i++) {
|
|
1047
|
0 |
0 |
if (!kp) continue;
|
|
1051
|
0 |
0 |
if (!vp) continue;
|
|
1052
|
0 |
0 |
if (!first) dbuf_puts(aTHX_ d, ", ", 2);
|
|
1058
|
0 |
0 |
} else if (tied) {
|
|
1064
|
0 |
0 |
for (SSize_t i = 0; i < n; i++) {
|
|
1067
|
0 |
0 |
if (!kp || !vp) continue;
|
|
|
0 |
0 |
if (!kp || !vp) continue;
|
|
1068
|
0 |
0 |
if (!first) dbuf_puts(aTHX_ d, ", ", 2);
|
|
1079
|
0 |
0 |
while ((he = hv_iternext(hv))) {
|
|
1080
|
0 |
0 |
if (!first) dbuf_puts(aTHX_ d, ", ", 2);
|
|
1083
|
0 |
0 |
char *ks = HePV(he, klen);
|
|
1110
|
2 |
0 |
if (tied) {
|
|
1113
|
2 |
0 |
if (!k_slot || !v_slot) return;
|
|
|
0 |
2 |
if (!k_slot || !v_slot) return;
|
|
1117
|
4 |
2 |
for (SSize_t i = 0; i < n; i++) {
|
|
1120
|
4 |
0 |
if (!kp || !vp) continue;
|
|
|
0 |
4 |
if (!kp || !vp) continue;
|
|
1125
|
4 |
0 |
if (v && SvROK(v)) {
|
|
|
4 |
0 |
if (v && SvROK(v)) {
|
|
1128
|
4 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
|
0 |
4 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
1129
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) {
|
|
1132
|
0 |
0 |
if (sub_tied) {
|
|
1134
|
0 |
0 |
if (sk && av_len((AV *)SvRV(*sk)) >= 0)
|
|
|
0 |
0 |
if (sk && av_len((AV *)SvRV(*sk)) >= 0)
|
|
1136
|
0 |
0 |
} else if (HvUSEDKEYS(sub)) {
|
|
|
0 |
0 |
} else if (HvUSEDKEYS(sub)) {
|
|
1139
|
0 |
0 |
} else if (SvTYPE(rv) == SVt_PVAV) {
|
|
1140
|
0 |
0 |
if (av_len((AV *)rv) >= 0) can_block = 1;
|
|
1147
|
0 |
4 |
if (can_block) {
|
|
1150
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) {
|
|
1166
|
0 |
0 |
if (lite_keys) {
|
|
1168
|
0 |
0 |
for (SSize_t i = 0; i < n; i++) {
|
|
1170
|
0 |
0 |
if (!kp) continue;
|
|
1174
|
0 |
0 |
if (!vp) continue;
|
|
1177
|
0 |
0 |
if (v && SvROK(v)) {
|
|
|
0 |
0 |
if (v && SvROK(v)) {
|
|
1180
|
0 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
|
0 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
1181
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) {
|
|
1185
|
0 |
0 |
if (SvRMAGICAL((SV *)sub) && get_ixhash_tied(aTHX_ sub)) {
|
|
|
0 |
0 |
if (SvRMAGICAL((SV *)sub) && get_ixhash_tied(aTHX_ sub)) {
|
|
1188
|
0 |
0 |
if (sk && av_len((AV *)SvRV(*sk)) >= 0)
|
|
|
0 |
0 |
if (sk && av_len((AV *)SvRV(*sk)) >= 0)
|
|
1192
|
0 |
0 |
if (sub_keys) {
|
|
1193
|
0 |
0 |
if (av_len(sub_keys) >= 0) can_block = 1;
|
|
1194
|
0 |
0 |
} else if (HvUSEDKEYS(sub)) {
|
|
|
0 |
0 |
} else if (HvUSEDKEYS(sub)) {
|
|
1198
|
0 |
0 |
} else if (SvTYPE(rv) == SVt_PVAV) {
|
|
1199
|
0 |
0 |
if (av_len((AV *)rv) >= 0) can_block = 1;
|
|
1206
|
0 |
0 |
if (can_block) {
|
|
1209
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) emit_perl_table(aTHX_ d, (HV *)rv, indent + 1);
|
|
1222
|
0 |
0 |
while ((he = hv_iternext(hv))) {
|
|
1224
|
0 |
0 |
char *ks = HePV(he, klen);
|
|
1227
|
0 |
0 |
if (v && SvROK(v)) {
|
|
|
0 |
0 |
if (v && SvROK(v)) {
|
|
1230
|
0 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
|
0 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
1231
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) {
|
|
1232
|
0 |
0 |
if (HvUSEDKEYS((HV *)rv)) can_block = 1;
|
|
|
0 |
0 |
if (HvUSEDKEYS((HV *)rv)) can_block = 1;
|
|
1233
|
0 |
0 |
} else if (SvTYPE(rv) == SVt_PVAV) {
|
|
1234
|
0 |
0 |
if (av_len((AV *)rv) >= 0) can_block = 1;
|
|
1241
|
0 |
0 |
if (can_block) {
|
|
1244
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) emit_perl_table(aTHX_ d, (HV *)rv, indent + 1);
|
|
1256
|
0 |
0 |
for (SSize_t i = 0; i < n; i++) {
|
|
1258
|
0 |
0 |
if (!slot) continue;
|
|
1261
|
0 |
0 |
if (v && SvROK(v)) {
|
|
|
0 |
0 |
if (v && SvROK(v)) {
|
|
1264
|
0 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
|
0 |
0 |
if (bk == BLE_OTHER || bk == BLE_UNORDERED) {
|
|
1265
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) {
|
|
1271
|
0 |
0 |
if (sub_tied) {
|
|
1273
|
0 |
0 |
if (sk && av_len((AV *)SvRV(*sk)) >= 0)
|
|
|
0 |
0 |
if (sk && av_len((AV *)SvRV(*sk)) >= 0)
|
|
1277
|
0 |
0 |
if (sub_lite_keys) {
|
|
1278
|
0 |
0 |
if (av_len(sub_lite_keys) >= 0) can_block = 1;
|
|
1279
|
0 |
0 |
} else if (HvUSEDKEYS(sub)) {
|
|
|
0 |
0 |
} else if (HvUSEDKEYS(sub)) {
|
|
1283
|
0 |
0 |
} else if (SvTYPE(rv) == SVt_PVAV) {
|
|
1284
|
0 |
0 |
if (av_len((AV *)rv) >= 0) can_block = 1;
|
|
1290
|
0 |
0 |
if (can_block) {
|
|
1293
|
0 |
0 |
if (SvTYPE(rv) == SVt_PVHV) emit_perl_table(aTHX_ d, (HV *)rv, indent + 1);
|
|
1306
|
2 |
0 |
if (!SvROK(doc_rv) || SvTYPE(SvRV(doc_rv)) != SVt_PVHV) {
|
|
|
0 |
2 |
if (!SvROK(doc_rv) || SvTYPE(SvRV(doc_rv)) != SVt_PVHV) {
|
|
1317
|
2 |
0 |
if (meta_slot && *meta_slot && SvOK(*meta_slot)) {
|
|
|
2 |
0 |
if (meta_slot && *meta_slot && SvOK(*meta_slot)) {
|
|
|
0 |
2 |
if (meta_slot && *meta_slot && SvOK(*meta_slot)) {
|
|
1319
|
0 |
0 |
if (SvROK(meta_sv) && SvTYPE(SvRV(meta_sv)) == SVt_PVHV) {
|
|
|
0 |
0 |
if (SvROK(meta_sv) && SvTYPE(SvRV(meta_sv)) == SVt_PVHV) {
|
|
1325
|
0 |
0 |
if (meta_tied) {
|
|
1327
|
0 |
0 |
if (kp && av_len((AV *)SvRV(*kp)) >= 0) has_keys = 1;
|
|
|
0 |
0 |
if (kp && av_len((AV *)SvRV(*kp)) >= 0) has_keys = 1;
|
|
1330
|
0 |
0 |
if (meta_lite_keys) {
|
|
1331
|
0 |
0 |
if (av_len(meta_lite_keys) >= 0) has_keys = 1;
|
|
1332
|
0 |
0 |
} else if (HvUSEDKEYS(meta_hv)) {
|
|
|
0 |
0 |
} else if (HvUSEDKEYS(meta_hv)) {
|
|
1336
|
0 |
0 |
if (has_keys) {
|
|
1345
|
2 |
0 |
if (body_slot && *body_slot) {
|
|
|
2 |
0 |
if (body_slot && *body_slot) {
|
|
1347
|
2 |
0 |
if (SvROK(body)) {
|
|
1349
|
2 |
0 |
if (SvTYPE(body_rv) == SVt_PVHV) {
|
|
1351
|
0 |
0 |
} else if (SvTYPE(body_rv) == SVt_PVAV) {
|
|
1357
|
0 |
0 |
} else if (SvOK(body)) {
|
|
1386
|
0 |
40 |
if (!doc) {
|
|
1394
|
6 |
34 |
if (doc->meta) {
|
|
1437
|
0 |
0 |
if (!doc) {
|
|
1485
|
0 |
0 |
if (!in_buf) croak("out of memory reading stdin");
|
|
1487
|
0 |
0 |
if (in_len == in_cap) {
|
|
1490
|
0 |
0 |
if (!in_buf) croak("out of memory reading stdin");
|
|
1500
|
0 |
0 |
if (got <= 0) break;
|
|
1507
|
0 |
0 |
if (!doc) {
|
|
1521
|
0 |
0 |
while (wrote < j.len) {
|
|
1533
|
0 |
0 |
if (n <= 0) { libc_free(j.buf); croak("write to stdout failed"); }
|
|
1556
|
4 |
4 |
if (!doc) {
|
|
1561
|
4 |
0 |
if (doc->meta) {
|