line |
true |
false |
branch |
94
|
193 |
73 |
if (!pb->sv)
|
105
|
93 |
63 |
for (; iter != last; ++iter)
|
107
|
93 |
0 |
if (*iter)
|
109
|
10 |
83 |
if (*iter == sv)
|
116
|
63 |
0 |
if (!hole)
|
118
|
0 |
63 |
Renew(pb->sv, pb->n + 1, SV*);
|
135
|
162 |
465 |
if (!s->flat) {
|
140
|
19 |
608 |
if (!SvOK(sv))
|
|
19 |
0 |
if (!SvOK(sv))
|
|
19 |
0 |
if (!SvOK(sv))
|
143
|
476 |
132 |
key = SvPV(sv, len);
|
147
|
589 |
19 |
if (!hv_exists(s->flat, key, len)) {
|
148
|
0 |
589 |
if (!hv_store(s->flat, key, len, &PL_sv_undef, 0)) {
|
169
|
36 |
0 |
if (!s->flat || !HvKEYS(s->flat)) {
|
|
0 |
36 |
if (!s->flat || !HvKEYS(s->flat)) {
|
|
0 |
36 |
if (!s->flat || !HvKEYS(s->flat)) {
|
183
|
36 |
0 |
key = SvPV(sv, len);
|
186
|
36 |
0 |
if ( hv_delete(s->flat, key, len, 0) ) {
|
201
|
248 |
6 |
if (s->flat && HvKEYS(s->flat)) {
|
|
0 |
248 |
if (s->flat && HvKEYS(s->flat)) {
|
|
247 |
1 |
if (s->flat && HvKEYS(s->flat)) {
|
203
|
244 |
3 |
char* key = SvPV(sv, len);
|
219
|
0 |
253 |
if (!SvROK(rv))
|
224
|
83 |
170 |
if (!s->buckets)
|
233
|
243 |
10 |
if (insert_in_bucket(s->bucket + index, el))
|
237
|
15 |
228 |
if (s->is_weak) {
|
246
|
4 |
249 |
if (s->elems > s->buckets)
|
256
|
0 |
4 |
Renew(s->bucket, newn, BUCKET);
|
257
|
0 |
4 |
Zero(s->bucket + oldn, oldn, BUCKET);
|
264
|
48 |
4 |
for (i = 0; bucket_iter != bucket_last; ++bucket_iter, ++i)
|
269
|
17 |
31 |
if (!bucket_iter->sv)
|
276
|
52 |
31 |
for (; el_iter != el_last; ++el_iter)
|
282
|
39 |
13 |
if (index == i)
|
296
|
6 |
25 |
if (!new_bucket_size)
|
303
|
4 |
21 |
else if (new_bucket_size < bucket_iter->n)
|
305
|
0 |
4 |
Renew(bucket_iter->sv, new_bucket_size, SV*);
|
320
|
712 |
4288 |
for (; bucket_iter != bucket_last; ++bucket_iter)
|
324
|
525 |
187 |
if (!bucket_iter->sv)
|
330
|
243 |
187 |
for (; el_iter != el_last; ++el_iter)
|
332
|
212 |
31 |
if (*el_iter)
|
339
|
6 |
206 |
if (s->is_weak) {
|
365
|
15 |
20 |
if (SvMAGICAL(sv))
|
377
|
9 |
0 |
if (mg) {
|
385
|
9 |
9 |
while (i >= 0) {
|
386
|
9 |
0 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
|
9 |
0 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
|
9 |
0 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
|
3 |
6 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
387
|
3 |
0 |
ISET* o = INT2PTR(ISET*, SvIV(svp[i]));
|
388
|
3 |
0 |
if (s == o) {
|
401
|
9 |
0 |
if (!c) {
|
415
|
48 |
20 |
for (; bucket_iter != bucket_last; ++bucket_iter)
|
419
|
41 |
7 |
if (!bucket_iter->sv)
|
425
|
7 |
7 |
for (; el_iter != el_last; ++el_iter)
|
426
|
6 |
1 |
if (*el_iter) {
|
427
|
1 |
5 |
if (strong) {
|
437
|
5 |
0 |
if ( SvREFCNT(*el_iter) > 1 )
|
459
|
20 |
20 |
while (i >= 0) {
|
461
|
20 |
0 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
|
20 |
0 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
|
20 |
0 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
|
11 |
9 |
if (svp[i] && SvIOK(svp[i]) && SvIV(svp[i])) {
|
462
|
11 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(svp[i]));
|
464
|
0 |
11 |
if (!s->is_weak)
|
469
|
0 |
11 |
if (iset_remove_one(s, sv, 1) != 1) {
|
492
|
0 |
20 |
if (mg) {
|
515
|
0 |
20 |
while (i >= 0) {
|
516
|
0 |
0 |
if (svp[i] && SvIV(svp[i])) {
|
|
0 |
0 |
if (svp[i] && SvIV(svp[i])) {
|
|
0 |
0 |
if (svp[i] && SvIV(svp[i])) {
|
|
0 |
0 |
if (svp[i] && SvIV(svp[i])) {
|
517
|
0 |
0 |
ISET* o = INT2PTR(ISET*, SvIV(svp[i]));
|
518
|
0 |
0 |
if (s == o)
|
521
|
0 |
0 |
if ( svp[i] ) SvREFCNT_dec(svp[i]);
|
528
|
20 |
0 |
if (free == -1) {
|
552
|
63 |
11 |
if (!spell_in_progress && !SvOK(el))
|
|
2 |
61 |
if (!spell_in_progress && !SvOK(el))
|
|
2 |
0 |
if (!spell_in_progress && !SvOK(el))
|
|
2 |
0 |
if (!spell_in_progress && !SvOK(el))
|
555
|
11 |
61 |
if (SvOK(el) && !SvROK(el)) {
|
|
11 |
0 |
if (SvOK(el) && !SvROK(el)) {
|
|
0 |
11 |
if (SvOK(el) && !SvROK(el)) {
|
|
37 |
24 |
if (SvOK(el) && !SvROK(el)) {
|
557
|
36 |
1 |
if (s->flat && HvKEYS(s->flat)) {
|
|
0 |
36 |
if (s->flat && HvKEYS(s->flat)) {
|
|
36 |
0 |
if (s->flat && HvKEYS(s->flat)) {
|
559
|
36 |
0 |
if (iset_remove_scalar(s, el))
|
565
|
24 |
11 |
referant = (spell_in_progress ? el : SvRV(el));
|
570
|
1 |
34 |
if (s->buckets == 0)
|
573
|
3 |
31 |
if (!bucket->sv)
|
582
|
35 |
0 |
for (; el_iter != el_last; ++el_iter) {
|
583
|
31 |
4 |
if (*el_iter == referant) {
|
584
|
13 |
18 |
if (s->is_weak) {
|
586
|
2 |
11 |
if (!spell_in_progress) {
|
645
|
745 |
2271 |
for (item = 1; item < items; ++item) {
|
647
|
1 |
744 |
SvGETMAGIC(el);
|
|
0 |
1 |
SvGETMAGIC(el);
|
648
|
195 |
550 |
ISET_INSERT(s, el);
|
662
|
69 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
666
|
122 |
69 |
for (item = 1; item < items; ++item)
|
669
|
0 |
122 |
if ((SV*)s == el) {
|
672
|
0 |
122 |
SvGETMAGIC(el);
|
|
0 |
0 |
SvGETMAGIC(el);
|
673
|
51 |
71 |
if ISET_INSERT(s, el)
|
|
103 |
19 |
if ISET_INSERT(s, el)
|
686
|
41 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
692
|
63 |
41 |
for (item = 1; item < items; ++item)
|
695
|
0 |
63 |
SvGETMAGIC(el);
|
|
0 |
0 |
SvGETMAGIC(el);
|
705
|
15 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
706
|
0 |
15 |
if (s->elems)
|
708
|
13 |
2 |
if (s->flat) {
|
709
|
0 |
13 |
if (HvKEYS(s->flat)) {
|
|
11 |
2 |
if (HvKEYS(s->flat)) {
|
722
|
170 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
723
|
59 |
111 |
RETVAL = s->elems + (s->flat ? HvKEYS(s->flat) : 0);
|
|
0 |
59 |
RETVAL = s->elems + (s->flat ? HvKEYS(s->flat) : 0);
|
742
|
0 |
0 |
if (SvROK(self)) {
|
756
|
384 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
761
|
397 |
188 |
for (item = 1; item < items; ++item)
|
766
|
2 |
395 |
if (!SvOK(el))
|
|
2 |
0 |
if (!SvOK(el))
|
|
2 |
0 |
if (!SvOK(el))
|
769
|
0 |
395 |
SvGETMAGIC(el);
|
|
0 |
0 |
SvGETMAGIC(el);
|
770
|
254 |
141 |
if (!SvROK(el)) {
|
772
|
133 |
121 |
if (!iset_includes_scalar(s, el))
|
779
|
41 |
100 |
if (!s->buckets)
|
789
|
12 |
88 |
if (!bucket->sv)
|
795
|
97 |
8 |
for (; el_iter != el_last; ++el_iter)
|
796
|
80 |
17 |
if (*el_iter == rv)
|
813
|
2422 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
817
|
300 |
2122 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
|
0 |
300 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
|
300 |
2122 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
|
0 |
300 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
|
0 |
2422 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
|
0 |
0 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
|
0 |
0 |
EXTEND(sp, s->elems + (s->flat ? HvKEYS(s->flat) : 0) );
|
819
|
688 |
2422 |
for (; bucket_iter != bucket_last; ++bucket_iter)
|
823
|
513 |
175 |
if (!bucket_iter->sv)
|
829
|
217 |
175 |
for (; el_iter != el_last; ++el_iter)
|
831
|
212 |
5 |
if (*el_iter) {
|
833
|
204 |
8 |
if (SvOBJECT(*el_iter)) {
|
841
|
300 |
2122 |
if (s->flat) {
|
844
|
998 |
300 |
while (i++ < num) {
|
847
|
998 |
0 |
PUSHs(HeSVKEY_force(he));
|
|
0 |
998 |
PUSHs(HeSVKEY_force(he));
|
|
0 |
998 |
PUSHs(HeSVKEY_force(he));
|
856
|
12 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
859
|
9 |
3 |
if (s->flat) {
|
869
|
4279 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
870
|
4276 |
3 |
if ( s ) {
|
874
|
162 |
4114 |
if (s->flat) {
|
886
|
2005 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
897
|
20 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
899
|
1 |
19 |
if (s->is_weak)
|
913
|
1 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(self)));
|
915
|
0 |
1 |
if (!s->is_weak)
|
932
|
0 |
22 |
SvGETMAGIC(sv);
|
|
0 |
0 |
SvGETMAGIC(sv);
|
933
|
15 |
7 |
if ( !SvIOKp(sv) )
|
945
|
0 |
9 |
SvGETMAGIC(sv);
|
|
0 |
0 |
SvGETMAGIC(sv);
|
946
|
5 |
4 |
if ( !SvPOKp(sv) )
|
958
|
0 |
14 |
SvGETMAGIC(sv);
|
|
0 |
0 |
SvGETMAGIC(sv);
|
959
|
5 |
9 |
if ( !SvNOKp(sv) )
|
973
|
0 |
6 |
if (! SvROK(sv)) {
|
978
|
3 |
3 |
if (! (mg = _detect_magic(SvRV(sv))) )
|
997
|
6 |
0 |
ISET* s = INT2PTR(ISET*, SvIV(SvRV(sv)));
|
998
|
3 |
3 |
if (s->flat) {
|
1012
|
0 |
12 |
if (SvMAGICAL(sv))
|
1014
|
2 |
10 |
if(!sv_isobject(sv)) {
|
1028
|
0 |
6 |
if (SvMAGICAL(sv))
|
1030
|
0 |
6 |
if(!SvROK(sv)) {
|
1044
|
5 |
0 |
if(SvROK(sv)) {
|
1069
|
1 |
25 |
if (SvMAGICAL(sv)) {
|
1074
|
3 |
22 |
if (SvAMAGIC(sv)) {
|
|
3 |
0 |
if (SvAMAGIC(sv)) {
|
|
3 |
0 |
if (SvAMAGIC(sv)) {
|
1080
|
16 |
6 |
if (SvNIOKp(sv)) {
|
1083
|
7 |
9 |
if (SvPOKp(sv)) {
|
1097
|
5 |
2 |
if (SvIOKp(sv)) {
|
1098
|
3 |
2 |
MH = newSViv(SvIV(sv));
|
1099
|
2 |
0 |
} else if (SvNOKp(sv)) {
|
1100
|
2 |
0 |
MH = newSVnv(SvNV(sv));
|
1105
|
3 |
4 |
if (sv_cmp(MH, sv) != 0) {
|
1110
|
9 |
4 |
if (SvNOKp(sv)) {
|
1112
|
9 |
0 |
dutch = SvNV(sv);
|
1113
|
1 |
8 |
if (SvIOKp(sv)) {
|
1114
|
1 |
0 |
innit = SvIV(sv);
|
1118
|
8 |
1 |
if (dutch - innit < (0.000000001)) {
|
1123
|
4 |
0 |
} else if (SvIOKp(sv)) {
|
1124
|
4 |
0 |
RETVAL = SvIV(sv);
|
1137
|
0 |
14 |
SvGETMAGIC(sv);
|
|
0 |
0 |
SvGETMAGIC(sv);
|
1138
|
7 |
7 |
if ( !SvAMAGIC(sv) )
|
|
5 |
2 |
if ( !SvAMAGIC(sv) )
|
|
0 |
5 |
if ( !SvAMAGIC(sv) )
|
1149
|
0 |
0 |
SvGETMAGIC(sv);
|
|
0 |
0 |
SvGETMAGIC(sv);
|
1150
|
0 |
0 |
if ( !SvOBJECT(sv) )
|
1174
|
0 |
2005 |
if (!SvROK(obj)) {
|
1189
|
13 |
2005 |
for (item = 3; item < items; ++item)
|
1192
|
0 |
13 |
SvGETMAGIC(el);
|
|
0 |
0 |
SvGETMAGIC(el);
|
1193
|
7 |
6 |
ISET_INSERT(s, el);
|