Branch Coverage

lib/Data/Dump/Streamer.xs
Criterion Covered Total %
branch 118 304 38.8


line true false branch
128 67 18 if (s[0] == ':') {
129 67 0 if (*++s) {
130 67 0 if (*s++ != ':')
136 85 0 if (isIDFIRST(*s)) {
137 283 67 while (*++s)
138 265 18 if (!isALNUM(*s)) {
139 18 0 if (*s == ':')
174 0 0 while (slen > 0) {
0 0 while (slen > 0) {
0 0 while (slen > 0) {
175 0 0 switch (*s) {
0 0 switch (*s) {
0 0 switch (*s) {
194 566 43 if (items == 1) {
195 42 524 if (SvREADONLY(sv))
200 43 0 else if (items == 2) {
201 43 0 if (SvTRUE(ST(1))) {
0 43 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 43 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 43 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
43 0 if (SvTRUE(ST(1))) {
43 0 if (SvTRUE(ST(1))) {
0 43 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
43 0 if (SvTRUE(ST(1))) {
0 0 if (SvTRUE(ST(1))) {
219 0 0 if (items == 1)
221 0 0 else if (items == 2) {
223 0 0 SvREFCNT(sv) = SvIV(ST(1));
255 3 0 char *ptr = SvPV(str,len);
257 3 0 (void)SvUPGRADE(ST(0),SVt_PVNV);
259 0 3 if(SvNOK(num) || SvPOK(num) || SvMAGICAL(num)) {
260 0 0 SvNVX(ST(0)) = SvNV(num);
264 0 3 else if (SvUOK(num)) {
265 0 0 SvUVX(ST(0)) = SvUV(num);
271 3 0 SvIVX(ST(0)) = SvIV(num);
274 0 3 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
275 0 0 SvTAINTED_on(ST(0));
285 552 560 RETVAL = ((SvNIOK(sv)) && (SvPOK(sv))) ? 1 : 0;
400 152 RETVAL = ((SvNIOK(sv)) && (SvPOK(sv))) ? 1 : 0;
301 48 0 if (!SvROK(avref) || SvTYPE(SvRV(avref)) != SVt_PVAV)
0 48 if (!SvROK(avref) || SvTYPE(SvRV(avref)) != SVt_PVAV)
305 0 48 if (!av_store(av, key, val)) {
323 1 0 if (!SvROK(avref) || SvTYPE(SvRV(avref)) != SVt_PVAV)
0 1 if (!SvROK(avref) || SvTYPE(SvRV(avref)) != SVt_PVAV)
339 19 0 if (!SvROK(hvref) || SvTYPE(SvRV(hvref)) != SVt_PVHV)
0 19 if (!SvROK(hvref) || SvTYPE(SvRV(hvref)) != SVt_PVHV)
343 0 19 if (!hv_store_ent(hv, key, val, 0)) {
360 21 5106 if (SvMAGICAL(sv))
362 4487 640 if(!sv_isobject(sv)) {
377 18735 2028 if(!SvROK(sv)) {
405 1201 9 ST(0) = boolSV(SvROK(sv) && SvWEAKREF(sv));
419 1 0 ADD_WEAK_REFCOUNT;
1 0 ADD_WEAK_REFCOUNT;
1 0 ADD_WEAK_REFCOUNT;
1 0 ADD_WEAK_REFCOUNT;
0 1 ADD_WEAK_REFCOUNT;
431 19 3608 ADD_WEAK_REFCOUNT;
17 2 ADD_WEAK_REFCOUNT;
16 1 ADD_WEAK_REFCOUNT;
16 0 ADD_WEAK_REFCOUNT;
0 16 ADD_WEAK_REFCOUNT;
442 2330 6 if(!SvROK(sv)) {
447 55 2275 ADD_WEAK_REFCOUNT;
11 44 ADD_WEAK_REFCOUNT;
11 0 ADD_WEAK_REFCOUNT;
11 0 ADD_WEAK_REFCOUNT;
0 11 ADD_WEAK_REFCOUNT;
496 0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
0 0 if (SvTRUE(set)) {
536 30 0 if (!SvROK(src) || !SvROK(dst))
0 30 if (!SvROK(src) || !SvROK(dst))
542 0 30 if (!(dt < SVt_PVAV && st < SVt_PVAV || dt == st && dt <= SVt_PVHV))
0 0 if (!(dt < SVt_PVAV && st < SVt_PVAV || dt == st && dt <= SVt_PVHV))
545 1525 30 for (i = 0; i <= av_len(padv); ++i) {
547 1495 30 if (myvar_ptr) {
548 30 1465 if (SvRV(dst) == *myvar_ptr) {
555 0 30 if (!ok)
568 4 6112 if (SvMAGICAL(sv))
570 126 5990 if(!SvROK(sv)) {
585 0 0 if (SvMAGICAL(sv))
587 0 0 if(SvROK(sv)) {
592 0 0 if (realtype == SVt_PVGV) {
594 0 0 RETVAL = SvPV(sv, i);
609 18 3677 if (SvMAGICAL(sv))
611 2232 1463 if(SvROK(sv)) {
616 28 1435 if (realtype == SVt_PVGV) {
626 0 28 c = SvPV(sv, i);
630 28 0 if (i >= 6 && strncmp(c, "main::", 6) == 0) {
19 9 if (i >= 6 && strncmp(c, "main::", 6) == 0) {
634 0 28 if (needs_q(c)) {
667 0 0 if (SvMAGICAL(sv))
669 0 0 if(SvROK(sv)) {
676 0 0 if (realtype == SVt_PVGV) {
686 0 0 c = SvPV(sv, i);
690 0 0 if (i >= 6 && strncmp(c, "main::", 6) == 0) {
0 0 if (i >= 6 && strncmp(c, "main::", 6) == 0) {
694 0 0 if (needs_q(c)) {
726 0 3267 if (SvMAGICAL(sv))
728 1998 1269 if(SvROK(sv)) {
733 39 1230 if (realtype == SVt_PVGV) {
743 0 39 c = SvPV(sv, i);
747 39 0 if (i >= 6 && strncmp(c, "main::", 6) == 0) {
30 9 if (i >= 6 && strncmp(c, "main::", 6) == 0) {
751 0 39 if (needs_q(c)) {
976 0 0 if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
0 0 if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
978 0 0 if (!SvROK(keys) || SvTYPE(SvRV(keys)) != SVt_PVAV)
0 0 if (!SvROK(keys) || SvTYPE(SvRV(keys)) != SVt_PVAV)
980 0 0 if (!SvROK(placeholder) || SvTYPE(SvRV(placeholder)) != SVt_PVAV)
0 0 if (!SvROK(placeholder) || SvTYPE(SvRV(placeholder)) != SVt_PVAV)
991 0 0 while((he = hv_iternext_flags(hv, HV_ITERNEXT_WANTPLACEHOLDERS))!= NULL) {
993 0 0 if (HeVAL(he) == &MY_PLACEHOLDER) {
1013 48 0 if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
0 48 if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
1018 232 48 while((he = hv_iternext_flags(hv, HV_ITERNEXT_WANTPLACEHOLDERS))!= NULL) {
1020 86 146 if (HeVAL(he) == &MY_PLACEHOLDER) {
1021 0 86 XPUSHs( key );
1034 6 0 if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
0 6 if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
1040 54 6 while((he = hv_iternext_flags(hv, HV_ITERNEXT_WANTPLACEHOLDERS))!= NULL) {
1042 0 54 XPUSHs( key );