| line |
true |
false |
branch |
|
18
|
0 |
0 |
Object (T* sv, bool policy = INCREMENT) : Sv(sv, policy) { _validate(); } |
|
22
|
0 |
0 |
Object (const Sv& oth) : Sv(oth) { _validate(); } |
|
89
|
0 |
0 |
if (!sv) return; |
|
90
|
0 |
0 |
if (SvOBJECT(sv)) return; |
|
91
|
0 |
0 |
if (SvROK(sv)) { // reference to object? |
|
93
|
0 |
0 |
if (SvOBJECT(val)) { |
|
94
|
0 |
0 |
_ref = sv; |
|
95
|
0 |
0 |
Sv::operator=(val); |
|
99
|
0 |
0 |
if (is_undef()) return reset(); |
|
101
|
0 |
0 |
throw std::invalid_argument("SV is not an Object (blessed value or reference to blessed value)"); |
|
104
|
0 |
0 |
void _check_ref () const { if (!_ref || SvRV(_ref) != sv) _ref = Ref::create(sv); } |
|
|
0 |
0 |
void _check_ref () const { if (!_ref || SvRV(_ref) != sv) _ref = Ref::create(sv); } |
|
|
0 |
0 |
void _check_ref () const { if (!_ref || SvRV(_ref) != sv) _ref = Ref::create(sv); } |