line |
true |
false |
branch |
33
|
13 |
3 |
if(ctx[CTX_GET_CB]) { |
39
|
0 |
13 |
PUSHMARK(SP); |
40
|
7 |
6 |
if(ctx[CTX_OBJ]) { |
41
|
0 |
7 |
EXTEND(SP, 1); |
46
|
7 |
6 |
if(ctx[CTX_OBJ] && SvPOK(ctx[CTX_GET_CB])) |
|
2 |
5 |
if(ctx[CTX_OBJ] && SvPOK(ctx[CTX_GET_CB])) |
57
|
13 |
0 |
FREETMPS; |
69
|
10 |
0 |
if(ctx[CTX_SET_CB]) { |
73
|
0 |
10 |
PUSHMARK(SP); |
74
|
5 |
5 |
if(ctx[CTX_OBJ]) { |
75
|
0 |
5 |
EXTEND(SP, 2); |
79
|
0 |
5 |
EXTEND(SP, 1); |
84
|
5 |
5 |
if(ctx[CTX_OBJ] && SvPOK(ctx[CTX_SET_CB])) |
|
2 |
3 |
if(ctx[CTX_OBJ] && SvPOK(ctx[CTX_SET_CB])) |
90
|
0 |
10 |
FREETMPS; |
116
|
43 |
20 |
for(i = 0; i < items; i += 2) { |
117
|
43 |
0 |
char *argname = SvPV_nolen(ST(i)); |
120
|
38 |
5 |
if(streq(argname, "value")) { |
123
|
13 |
25 |
else if(streq(argname, "get")) { |
|
13 |
0 |
else if(streq(argname, "get")) { |
|
13 |
0 |
else if(streq(argname, "get")) { |
|
25 |
13 |
else if(streq(argname, "get")) { |
126
|
15 |
10 |
else if(streq(argname, "set")) { |
|
15 |
0 |
else if(streq(argname, "set")) { |
|
15 |
0 |
else if(streq(argname, "set")) { |
|
10 |
15 |
else if(streq(argname, "set")) { |
129
|
10 |
0 |
else if(streq(argname, "obj")) { |
|
10 |
0 |
else if(streq(argname, "obj")) { |
|
10 |
0 |
else if(streq(argname, "obj")) { |
|
0 |
10 |
else if(streq(argname, "obj")) { |
149
|
5 |
15 |
if(value) |
152
|
17 |
3 |
if(get_cb || set_cb) { |
160
|
13 |
4 |
ctx[CTX_GET_CB] = get_cb ? newSVsv(get_cb) : NULL; |
161
|
15 |
2 |
ctx[CTX_SET_CB] = set_cb ? newSVsv(set_cb) : NULL; |
162
|
10 |
7 |
ctx[CTX_OBJ] = obj ? newSVsv(obj) : NULL; |
168
|
0 |
20 |
if (!items) |
169
|
0 |
0 |
EXTEND(SP, 1); |