Branch Coverage

lib/Colouring/In/XS.xs
Criterion Covered Total %
branch 29 108 26.8


line true false branch
19 1 0 SV * msgs = (items > 0) ? ST(items - 1) : NULL;
20 1 0 if (msgs && SvROK(msgs) && SvTYPE(SvRV(msgs)) == SVt_PVHV) {
1 0 if (msgs && SvROK(msgs) && SvTYPE(SvRV(msgs)) == SVt_PVHV) {
1 0 if (msgs && SvROK(msgs) && SvTYPE(SvRV(msgs)) == SVt_PVHV) {
30 0 10027 if (items < 2)
33 5 10022 a = (items > 2) && SvOK(ST(2)) ? ST(2) : sv_2mortal(newSViv(1));
4 1 a = (items > 2) && SvOK(ST(2)) ? ST(2) : sv_2mortal(newSViv(1));
49 1 0 double a = colouring_clamp(items > 4 ? SvNV(ST(4)) : 1, 1);
68 0 0 double a = colouring_clamp(items > 4 ? SvNV(ST(4)) : 1, 1);
83 1 0 double a = colouring_clamp(items > 4 ? SvNV(ST(4)) : 1, 1);
96 0 0 double a = colouring_clamp(items > 4 ? SvNV(ST(4)) : 1, 1);
106 0 0 int r = items > 1 ? SvIV(ST(1)) : 0;
107 0 0 int s = items > 2 ? SvIV(ST(2)) : 0;
110 0 0 if (alpha == 1) {
151 0 0 if (numIs(alpha_sv) && SvIV(alpha_sv) != 1) {
0 0 if (numIs(alpha_sv) && SvIV(alpha_sv) != 1) {
181 0 0 && SvTRUE(ST(1))
182 0 0 && SvTYPE(ST(1)) == SVt_IV;
0 0 && SvTYPE(ST(1)) == SVt_IV;
218 0 7 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
234 0 8 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
265 0 11 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
281 0 11 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
299 0 1 if (items > 2 && SvOK(ST(2)) && SvIV(ST(2)) != 0) {
0 0 if (items > 2 && SvOK(ST(2)) && SvIV(ST(2)) != 0) {
0 0 if (items > 2 && SvOK(ST(2)) && SvIV(ST(2)) != 0) {
318 0 1 if (items > 1 && SvOK(ST(1)) && SvIV(ST(1)) != 0) {
0 0 if (items > 1 && SvOK(ST(1)) && SvIV(ST(1)) != 0) {
0 0 if (items > 1 && SvOK(ST(1)) && SvIV(ST(1)) != 0) {
335 0 1 if (items > 1 && SvOK(ST(1)) && SvIV(ST(1)) != 0) {
0 0 if (items > 1 && SvOK(ST(1)) && SvIV(ST(1)) != 0) {
0 0 if (items > 1 && SvOK(ST(1)) && SvIV(ST(1)) != 0) {
351 0 1 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
367 0 2 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
0 0 int relative = items > 2 && SvOK(ST(2)) && strcmp(SvPV_nolen(ST(2)), "relative") == 0;
397 10001 0 EXTEND(SP, len + 1);
0 10001 EXTEND(SP, len + 1);
398 30003 10001 for (i = 0; i <= len; i++) {
406 4 0 HV * msgs = MESSAGES;
4 0 HV * msgs = MESSAGES;
409 4 0 SV ** slot = msgs ? hv_fetch(msgs, key, klen, 0) : NULL;
410 4 0 RETVAL = (slot && *slot) ? newSVsv(*slot) : &PL_sv_undef;
4 0 RETVAL = (slot && *slot) ? newSVsv(*slot) : &PL_sv_undef;