| line |
true |
false |
branch |
|
17
|
5 |
0 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
|
0 |
5 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
19
|
4 |
1 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
|
0 |
4 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
23
|
0 |
4 |
SSize_t max = AvFILL(av); |
|
25
|
4 |
0 |
if (max >= 0) { |
|
37
|
13 |
4 |
for (SSize_t i = 0, num = 1; i <= max; i++, num++) { |
|
39
|
0 |
13 |
if (!e) continue; |
|
41
|
13 |
0 |
DEFSV = e; /* $_ alias */ |
|
44
|
0 |
13 |
PUSHMARK(SP); |
|
45
|
0 |
13 |
XPUSHs(e); |
|
46
|
0 |
13 |
XPUSHs(idx_sv); |
|
53
|
4 |
0 |
FREETMPS; |
|
67
|
2 |
0 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
|
0 |
2 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
69
|
2 |
0 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
|
0 |
2 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
73
|
0 |
2 |
SSize_t max = AvFILL(av); |
|
75
|
2 |
0 |
if (max >= 0) { |
|
86
|
4 |
2 |
for (SSize_t i = 0, num = 1; i <= max; i++, num++) { |
|
88
|
0 |
4 |
if (!e) continue; |
|
92
|
0 |
4 |
PUSHMARK(SP); |
|
93
|
0 |
4 |
XPUSHs(e); |
|
94
|
0 |
4 |
XPUSHs(idx_sv); |
|
101
|
2 |
0 |
FREETMPS; |
|
115
|
4 |
0 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
|
0 |
4 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
117
|
4 |
0 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
|
0 |
4 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
121
|
0 |
4 |
SSize_t max = AvFILL(av); |
|
123
|
4 |
0 |
if (max >= 0) { |
|
135
|
10 |
4 |
for (SSize_t idx = 0, num = 1; idx <= max; idx++, num++) { |
|
137
|
0 |
10 |
if (!item) continue; |
|
139
|
10 |
0 |
DEFSV = item; /* alias to element */ |
|
142
|
0 |
10 |
PUSHMARK(SP); |
|
143
|
0 |
10 |
XPUSHs(item); |
|
144
|
0 |
10 |
XPUSHs(num_sv); |
|
151
|
4 |
0 |
FREETMPS; |
|
166
|
5 |
0 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
|
0 |
5 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
168
|
5 |
0 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
|
0 |
5 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
172
|
0 |
5 |
SSize_t max = AvFILL(av); |
|
178
|
5 |
0 |
if (max >= 0) { |
|
188
|
14 |
5 |
for (SSize_t i = 0; i <= max; i++) { |
|
190
|
0 |
14 |
if (!item) continue; |
|
192
|
0 |
14 |
PUSHMARK(SP); |
|
193
|
0 |
14 |
XPUSHs(item); |
|
199
|
14 |
0 |
if (count > 0) { |
|
201
|
14 |
0 |
if (ret && ret != &PL_sv_undef) { |
|
|
14 |
0 |
if (ret && ret != &PL_sv_undef) { |
|
202
|
14 |
0 |
av_push(out, SvTEMP(ret) ? newSVsv(ret) : SvREFCNT_inc(ret)); |
|
204
|
0 |
14 |
if (count > 1) SP -= (count - 1); |
|
208
|
5 |
0 |
FREETMPS; |
|
223
|
4 |
0 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
|
0 |
4 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
225
|
4 |
0 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
|
0 |
4 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
229
|
0 |
4 |
SSize_t max = AvFILL(av); |
|
235
|
4 |
0 |
if (max >= 0) { |
|
246
|
13 |
4 |
for (SSize_t idx = 0; idx <= max; idx++) { |
|
248
|
0 |
13 |
if (!item) continue; |
|
250
|
13 |
0 |
DEFSV = item; /* alias to element */ |
|
252
|
0 |
13 |
PUSHMARK(SP); |
|
253
|
0 |
13 |
XPUSHs(item); |
|
259
|
13 |
0 |
if (count > 0) { |
|
261
|
17 |
13 |
for (I32 i = 0; i < count; i++) { |
|
268
|
4 |
0 |
FREETMPS; |
|
283
|
5 |
0 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
|
0 |
5 |
if (!SvROK(self) || SvTYPE(SvRV(self)) != SVt_PVAV) |
|
285
|
5 |
0 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
|
0 |
5 |
if (!SvROK(cb) || SvTYPE(SvRV(cb)) != SVt_PVCV) |
|
289
|
0 |
5 |
SSize_t max = AvFILL(av); |
|
295
|
5 |
0 |
if (max >= 0) { |
|
305
|
19 |
5 |
for (SSize_t idx = 0; idx <= max; idx++) { |
|
307
|
0 |
19 |
if (!item) continue; |
|
309
|
19 |
0 |
DEFSV = item; /* $_ = item */ |
|
311
|
0 |
19 |
PUSHMARK(SP); |
|
312
|
0 |
19 |
XPUSHs(item); |
|
318
|
19 |
0 |
SV *decision = count > 0 ? POPs : &PL_sv_undef; |
|
319
|
0 |
19 |
if (count > 1) SP -= (count - 1); |
|
321
|
19 |
0 |
if (decision && SvTRUE(decision)) { |
|
|
11 |
8 |
if (decision && SvTRUE(decision)) { |
|
327
|
5 |
0 |
FREETMPS; |