Branch Coverage

Free.xs
Criterion Covered Total %
branch 92 236 38.9


line true false branch
42 2 31 if (decode_state->flags & CBF_FLAG_PRESERVE_REFERENCES) {
48 15 18 if (seqdecode->decode_state->incomplete_by) {
63 4 5 if (new_setting == NULL || SvTRUE(new_setting)) {
4 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 4 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 4 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 4 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
4 0 if (new_setting == NULL || SvTRUE(new_setting)) {
4 0 if (new_setting == NULL || SvTRUE(new_setting)) {
4 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 4 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
0 4 if (new_setting == NULL || SvTRUE(new_setting)) {
0 0 if (new_setting == NULL || SvTRUE(new_setting)) {
75 116 0 sv_setref_pv(RETVAL, SvPV_nolen(class), ptr);
81 6 0 IV tmp = SvIV((SV*)SvRV(self));
89 3 0 return (GIMME_V == G_VOID) ? NULL : newSVsv(self);
0 3 return (GIMME_V == G_VOID) ? NULL : newSVsv(self);
96 3 0 return (GIMME_V == G_VOID) ? NULL : newSVsv(self);
0 3 return (GIMME_V == G_VOID) ? NULL : newSVsv(self);
102 2 4 if (RETVAL) {
105 2 2 else if (NULL != decode_state->reflist) {
113 0 103 if (!(items_len % 2)) {
117 102 1 if (NULL == decode_state->tag_handler) {
122 103 103 for (i=1; i
126 0 103 UV tagnum = SvUV(tagnum_sv);
129 103 0 if (i
160 0 0 if (SVt_PVHV != SvTYPE(SvRV(hashref))) {
172 0 0 fprintf(stderr, "HeSVKEY after store_ent: %p, %p\n", stored, HeSVKEY(stored));
0 0 fprintf(stderr, "HeSVKEY after store_ent: %p, %p\n", stored, HeSVKEY(stored));
175 0 0 if (NULL == entry1) {
179 0 0 fprintf(stderr, "HeSVKEY after store_ent/fetch_ent: %p, %p\n", entry1, HeSVKEY(entry1));
0 0 fprintf(stderr, "HeSVKEY after store_ent/fetch_ent: %p, %p\n", entry1, HeSVKEY(entry1));
184 0 0 while ( (h_entry = hv_iternext(hash)) ) {
185 0 0 if (NULL == HeSVKEY(h_entry)) {
0 0 if (NULL == HeSVKEY(h_entry)) {
0 0 if (NULL == HeSVKEY(h_entry)) {
188 0 0 SV *keysv = HeSVKEY_force(h_entry);
0 0 SV *keysv = HeSVKEY_force(h_entry);
0 0 SV *keysv = HeSVKEY_force(h_entry);
193 0 0 fprintf(stderr, "after set: %p\n", HeSVKEY(h_entry));
0 0 fprintf(stderr, "after set: %p\n", HeSVKEY(h_entry));
216 151 16967 for (i=1; i
217 0 151 if (!(i % 2)) continue;
220 0 151 if (!SvPOK(opt_sv)) continue;
224 71 80 if (strEQ(optname, STRING_ENCODE_MODE_OPT)) {
227 71 0 if (i
230 0 71 if (SvOK(opt)) {
0 0 if (SvOK(opt)) {
0 0 if (SvOK(opt)) {
231 71 0 char* optstr = SvPV_nolen(opt);
234 204 0 for (i=0; i
235 71 133 if (strEQ(optstr, cbf_string_encode_mode_options[i])) {
241 0 71 if (i == CBF_STRING_ENCODE__LIMIT) {
249 72 8 else if (strEQ(optname, CANONICAL_OPT)) {
251 72 0 if (i
72 0 if (i
0 72 if (i
0 72 if (i
0 0 if (i
0 0 if (i
58 14 if (i
58 0 if (i
58 0 if (i
58 0 if (i
29 29 if (i
14 0 if (i
14 0 if (i
4 10 if (i
0 4 if (i
0 0 if (i
39 33 if (i
256 2 6 else if (strEQ(optname, PRESERVE_REFS_OPT)) {
258 2 0 if (i
2 0 if (i
0 2 if (i
0 2 if (i
0 0 if (i
0 0 if (i
0 2 if (i
0 0 if (i
0 0 if (i
0 0 if (i
0 0 if (i
2 0 if (i
2 0 if (i
0 2 if (i
0 0 if (i
0 0 if (i
2 0 if (i
263 6 0 else if (strEQ(optname, SCALAR_REFS_OPT)) {
265 6 0 if (i
6 0 if (i
0 6 if (i
0 6 if (i
0 0 if (i
0 0 if (i
0 6 if (i
0 0 if (i
0 0 if (i
0 0 if (i
0 0 if (i
6 0 if (i
6 0 if (i
3 3 if (i
0 3 if (i
0 0 if (i
3 3 if (i
287 16951 0 SvUPGRADE(RETVAL, SVt_PV);
327 2 125 if (decode_state->flags & CBF_FLAG_PRESERVE_REFERENCES) {