Branch Coverage

src/xs/Sv.h
Criterion Covered Total %
branch 11 40 27.5


line true false branch
47 0 0 Sv (T* sv, bool policy = INCREMENT) : sv((SV*)sv) { if (policy == INCREMENT) SvREFCNT_inc_simple_void(sv); }
0 0 Sv (T* sv, bool policy = INCREMENT) : sv((SV*)sv) { if (policy == INCREMENT) SvREFCNT_inc_simple_void(sv); }
0 0 Sv (T* sv, bool policy = INCREMENT) : sv((SV*)sv) { if (policy == INCREMENT) SvREFCNT_inc_simple_void(sv); }
0 0 Sv (T* sv, bool policy = INCREMENT) : sv((SV*)sv) { if (policy == INCREMENT) SvREFCNT_inc_simple_void(sv); }
56 0 0 SvREFCNT_inc_simple_void(val);
0 0 SvREFCNT_inc_simple_void(val);
59 0 0 SvREFCNT_dec(old);
0 0 SvREFCNT_dec(old);
93 114 1 bool is_ref () const { return sv && SvROK(sv); }
93 21 bool is_ref () const { return sv && SvROK(sv); }
104 35 1 bool is_object () const { return sv && SvOBJECT(sv); }
26 9 bool is_object () const { return sv && SvOBJECT(sv); }
105 82 3 bool is_object_ref () const { return is_ref() && SvOBJECT(SvRV(sv)); }
82 0 bool is_object_ref () const { return is_ref() && SvOBJECT(SvRV(sv)); }
170 0 0 inline bool is_undef() const { return (SvTYPE(sv) <= SVt_PVMG && !SvOK(sv)); }
0 0 inline bool is_undef() const { return (SvTYPE(sv) <= SVt_PVMG && !SvOK(sv)); }
0 0 inline bool is_undef() const { return (SvTYPE(sv) <= SVt_PVMG && !SvOK(sv)); }
0 0 inline bool is_undef() const { return (SvTYPE(sv) <= SVt_PVMG && !SvOK(sv)); }
171 0 0 inline bool is_scalar_unsafe() const { return (SvTYPE(sv) <= SVt_PVMG || SvTYPE(sv) == SVt_PVGV); }
0 0 inline bool is_scalar_unsafe() const { return (SvTYPE(sv) <= SVt_PVMG || SvTYPE(sv) == SVt_PVGV); }