line |
true |
false |
branch |
64
|
0 |
0 |
PUSHMARK(SP); |
67
|
0 |
0 |
while (*arg_p) |
72
|
0 |
0 |
arg.sc = va_arg_schar(av); |
73
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.sc))); |
76
|
0 |
0 |
arg.uc = va_arg_uchar(av); |
77
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.uc))); |
80
|
0 |
0 |
arg.ss = va_arg_short(av); |
81
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.ss))); |
84
|
0 |
0 |
arg.us = va_arg_ushort(av); |
85
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.us))); |
88
|
0 |
0 |
arg.si = va_arg_int(av); |
89
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.si))); |
92
|
0 |
0 |
arg.ui = va_arg_uint(av); |
93
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.ui))); |
96
|
0 |
0 |
arg.sl = va_arg_long(av); |
97
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.sl))); |
100
|
0 |
0 |
arg.ul = va_arg_ulong(av); |
101
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv(arg.ul))); |
104
|
0 |
0 |
arg.f = va_arg_float(av); |
|
0 |
0 |
arg.f = va_arg_float(av); |
|
0 |
0 |
arg.f = va_arg_float(av); |
105
|
0 |
0 |
XPUSHs(sv_2mortal(newSVnv(arg.f))); |
108
|
0 |
0 |
arg.d = va_arg_double(av); |
109
|
0 |
0 |
XPUSHs(sv_2mortal(newSVnv(arg.d))); |
112
|
0 |
0 |
arg.p = va_arg_ptr(av, char*); |
113
|
0 |
0 |
XPUSHs(sv_2mortal(newSVpv(arg.p, 0))); |
128
|
0 |
0 |
case 'v': va_return_void(av); break; |
|
0 |
0 |
case 'v': va_return_void(av); break; |
129
|
0 |
0 |
case 'c': arg.sc = POPi; va_return_schar(av, arg.sc); break; |
|
0 |
0 |
case 'c': arg.sc = POPi; va_return_schar(av, arg.sc); break; |
|
0 |
0 |
case 'c': arg.sc = POPi; va_return_schar(av, arg.sc); break; |
130
|
0 |
0 |
case 'C': arg.uc = POPi; va_return_uchar(av, arg.uc); break; |
|
0 |
0 |
case 'C': arg.uc = POPi; va_return_uchar(av, arg.uc); break; |
|
0 |
0 |
case 'C': arg.uc = POPi; va_return_uchar(av, arg.uc); break; |
131
|
0 |
0 |
case 's': arg.ss = POPi; va_return_short(av, arg.ss); break; |
|
0 |
0 |
case 's': arg.ss = POPi; va_return_short(av, arg.ss); break; |
|
0 |
0 |
case 's': arg.ss = POPi; va_return_short(av, arg.ss); break; |
132
|
0 |
0 |
case 'S': arg.us = POPi; va_return_ushort(av, arg.us); break; |
|
0 |
0 |
case 'S': arg.us = POPi; va_return_ushort(av, arg.us); break; |
|
0 |
0 |
case 'S': arg.us = POPi; va_return_ushort(av, arg.us); break; |
133
|
0 |
0 |
case 'i': arg.si = POPi; va_return_int(av, arg.si); break; |
|
0 |
0 |
case 'i': arg.si = POPi; va_return_int(av, arg.si); break; |
|
0 |
0 |
case 'i': arg.si = POPi; va_return_int(av, arg.si); break; |
134
|
0 |
0 |
case 'I': arg.ui = POPi; va_return_uint(av, arg.ui); break; |
|
0 |
0 |
case 'I': arg.ui = POPi; va_return_uint(av, arg.ui); break; |
|
0 |
0 |
case 'I': arg.ui = POPi; va_return_uint(av, arg.ui); break; |
135
|
0 |
0 |
case 'l': arg.sl = POPi; va_return_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = POPi; va_return_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = POPi; va_return_long(av, arg.sl); break; |
136
|
0 |
0 |
case 'L': arg.ul = POPi; va_return_ulong(av, arg.ul); break; |
|
0 |
0 |
case 'L': arg.ul = POPi; va_return_ulong(av, arg.ul); break; |
|
0 |
0 |
case 'L': arg.ul = POPi; va_return_ulong(av, arg.ul); break; |
137
|
0 |
0 |
case 'f': arg.f = POPn; va_return_double(av, arg.f); break; |
|
0 |
0 |
case 'f': arg.f = POPn; va_return_double(av, arg.f); break; |
|
0 |
0 |
case 'f': arg.f = POPn; va_return_double(av, arg.f); break; |
138
|
0 |
0 |
case 'd': arg.d = POPn; va_return_double(av, arg.d); break; |
|
0 |
0 |
case 'd': arg.d = POPn; va_return_double(av, arg.d); break; |
|
0 |
0 |
case 'd': arg.d = POPn; va_return_double(av, arg.d); break; |
139
|
0 |
0 |
case 'p': arg.p = POPp; va_return_ptr(av, char*, arg.p); break; |
|
0 |
0 |
case 'p': arg.p = POPp; va_return_ptr(av, char*, arg.p); break; |
|
0 |
0 |
case 'p': arg.p = POPp; va_return_ptr(av, char*, arg.p); break; |
143
|
0 |
0 |
FREETMPS; |
152
|
0 |
4 |
if (len < 2) |
155
|
0 |
4 |
if (*sig != 'c' && *sig != 's') |
|
0 |
0 |
if (*sig != 'c' && *sig != 's') |
158
|
0 |
4 |
if (strchr("cCsSiIlLfdpv", sig[1]) == NULL) |
162
|
0 |
4 |
if (i != len-2) |
198
|
0 |
4 |
#ifdef WIN32 /* Set via Makefile.PL */ |
201
|
5 |
4 |
#endif |
207
|
0 |
5 |
char type = sig[i]; |
212
|
0 |
0 |
switch(type) |
|
0 |
0 |
switch(type) |
|
0 |
0 |
switch(type) |
213
|
0 |
0 |
{ |
|
0 |
0 |
{ |
|
0 |
0 |
{ |
214
|
0 |
0 |
case 'c': arg.sc = SvIV(ST(i)); av_schar(av, arg.sc); break; |
|
0 |
0 |
case 'c': arg.sc = SvIV(ST(i)); av_schar(av, arg.sc); break; |
|
0 |
0 |
case 'c': arg.sc = SvIV(ST(i)); av_schar(av, arg.sc); break; |
215
|
0 |
0 |
case 'C': arg.uc = SvIV(ST(i)); av_uchar(av, arg.uc); break; |
|
0 |
0 |
case 'C': arg.uc = SvIV(ST(i)); av_uchar(av, arg.uc); break; |
|
0 |
0 |
case 'C': arg.uc = SvIV(ST(i)); av_uchar(av, arg.uc); break; |
216
|
0 |
0 |
case 's': arg.ss = SvIV(ST(i)); av_short(av, arg.ss); break; |
|
0 |
0 |
case 's': arg.ss = SvIV(ST(i)); av_short(av, arg.ss); break; |
|
0 |
0 |
case 's': arg.ss = SvIV(ST(i)); av_short(av, arg.ss); break; |
217
|
0 |
0 |
case 'S': arg.us = SvIV(ST(i)); av_ushort(av, arg.us); break; |
|
0 |
0 |
case 'S': arg.us = SvIV(ST(i)); av_ushort(av, arg.us); break; |
|
0 |
0 |
case 'S': arg.us = SvIV(ST(i)); av_ushort(av, arg.us); break; |
218
|
0 |
0 |
case 'i': arg.si = SvIV(ST(i)); av_int(av, arg.si); break; |
|
0 |
0 |
case 'i': arg.si = SvIV(ST(i)); av_int(av, arg.si); break; |
|
0 |
0 |
case 'i': arg.si = SvIV(ST(i)); av_int(av, arg.si); break; |
219
|
0 |
0 |
case 'I': arg.ui = SvIV(ST(i)); av_uint(av, arg.ui); break; |
|
0 |
0 |
case 'I': arg.ui = SvIV(ST(i)); av_uint(av, arg.ui); break; |
|
0 |
0 |
case 'I': arg.ui = SvIV(ST(i)); av_uint(av, arg.ui); break; |
220
|
0 |
0 |
case 'l': arg.sl = SvIV(ST(i)); av_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = SvIV(ST(i)); av_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = SvIV(ST(i)); av_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = SvIV(ST(i)); av_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = SvIV(ST(i)); av_long(av, arg.sl); break; |
|
0 |
0 |
case 'l': arg.sl = SvIV(ST(i)); av_long(av, arg.sl); break; |
221
|
1 |
1 |
case 'L': arg.ul = SvIV(ST(i)); av_ulong(av, arg.ul); break; |
|
2 |
0 |
case 'L': arg.ul = SvIV(ST(i)); av_ulong(av, arg.ul); break; |
|
0 |
0 |
case 'L': arg.ul = SvIV(ST(i)); av_ulong(av, arg.ul); break; |
222
|
3 |
0 |
case 'f': arg.f = SvNV(ST(i)); av_float(av, arg.f); break; |
|
3 |
0 |
case 'f': arg.f = SvNV(ST(i)); av_float(av, arg.f); break; |
|
0 |
0 |
case 'f': arg.f = SvNV(ST(i)); av_float(av, arg.f); break; |
226
|
0 |
4 |
} |
232
|
0 |
0 |
{ |
233
|
0 |
0 |
case 'v': break; |
234
|
0 |
0 |
case 'c': XPUSHs(newSViv(rv.sc)); break; |
235
|
0 |
0 |
case 'C': XPUSHs(newSViv(rv.uc)); break; |
236
|
0 |
2 |
case 's': XPUSHs(newSViv(rv.ss)); break; |
237
|
0 |
1 |
case 'S': XPUSHs(newSViv(rv.us)); break; |
238
|
0 |
0 |
case 'i': XPUSHs(newSViv(rv.si)); break; |
239
|
0 |
0 |
case 'I': XPUSHs(newSViv(rv.ui)); break; |
240
|
0 |
0 |
case 'l': XPUSHs(newSViv(rv.sl)); break; |
241
|
0 |
1 |
case 'L': XPUSHs(newSViv(rv.ul)); break; |
242
|
0 |
0 |
case 'f': XPUSHs(newSVnv(rv.f)); break; |
274
|
0 |
0 |
XPUSHs(newSViv(SvIV(SvRV(self)))); |
|
0 |
0 |
XPUSHs(newSViv(SvIV(SvRV(self)))); |
283
|
0 |
0 |
cb = SvIV(SvRV(self)); |