Branch Coverage

xsubs/member.xs
Criterion Covered Total %
branch 58 64 90.6


line true false branch
25 176 48526 CBC_METHOD(member);
30 48526 176 off = (have_offset = DEFINED(offset)) ? SvIV(offset) : 0;
48526 0 off = (have_offset = DEFINED(offset)) ? SvIV(offset) : 0;
48526 176 off = (have_offset = DEFINED(offset)) ? SvIV(offset) : 0;
34 12 48690 CHECK_PARSE_DATA;
35 12 48678 CHECK_VOID_CONTEXT;
8 4 CHECK_VOID_CONTEXT;
37 48678 0 NEED_PARSE_DATA;
1 48677 NEED_PARSE_DATA;
39 24 48606 if (!get_member_info(aTHX_ THIS, type, &mi, 0))
46 24 48498 if (mi.flags)
51 12 12 if (!have_offset)
54 12 12 WARN_FLAGS(type, flags);
8 4 WARN_FLAGS(type, flags);
57 48430 92 if (have_offset)
59 48424 6 if (off < 0 || off >= (int) mi.size)
47 48377 if (off < 0 || off >= (int) mi.size)
62 23154 25223 if (GIMME_V == G_ARRAY)
79 23154 0 EXTEND(SP, count);
0 23154 EXTEND(SP, count);
81 17079 23154 LL_foreach(member, li, info.hit)
17079 23154 LL_foreach(member, li, info.hit)
84 47442 23154 LL_foreach(member, li, info.off)
47442 23154 LL_foreach(member, li, info.off)
87 4286 23154 LL_foreach(member, li, info.pad)
4286 23154 LL_foreach(member, li, info.pad)
109 61 31 list = GIMME_V == G_ARRAY ? LL_new() : NULL;
112 61 31 if (GIMME_V == G_ARRAY)
116 61 0 EXTEND(SP, count);
0 61 EXTEND(SP, count);
118 17340 61 LL_foreach(member, li, list)
17340 61 LL_foreach(member, li, list)