Numeric-LL_Array
view release on metacpan or search on metacpan
LL_Array.xs view on Meta::CPAN
d_extract_1(s, off)
char *s
int off
void
d_extract(s, start, count, stride = 1)
char *s
int start
int count
int stride
PPCODE:
{
double *arr = (double *)s;
EXTEND(SP, count);
arr += start;
while (count--) {
PUSHs(sv_2mortal(newSVnv(*arr)));
arr += stride;
}
LL_Array.xs view on Meta::CPAN
char *perl_file
void
__a_accessor__INTERFACE(p, offset = 0, dim = 0, format = Nullsv, sv = Nullsv, keep = FALSE)
SV *p
I32 offset
int dim
SV* format
SV *sv
bool keep
PPCODE:
{
AV *av;
const char *p_s;
STRLEN sz;
dXSI32; /* ix */
const f_ass_descr *desc = Fa_get(ix);
int sizeof_elt = desc->codes_name[0];
if (!sv || !SvOK(sv))
av = 0;
LL_Array.xs view on Meta::CPAN
}
SPAGAIN;
}
void
_0arg__INTERFACE(p, offset = 0, dim = 0, format = Nullsv)
SV *p
I32 offset
int dim
SV* format
PPCODE:
{
char *p_s;
STRLEN sz;
dXSI32; /* ix */
const f_0arg_descr *desc = F0_get(ix);
int sizeof_elt = desc->codes_name[0];
if (dim && !format)
croak("format should be present if dim > 0");
p_s = SvPV(p, sz);
LL_Array.xs view on Meta::CPAN
void
_1arg__INTERFACE(s_p, p, s_offset, offset, dim, sformat, format)
SV *s_p
SV *p
I32 s_offset
I32 offset
int dim
SV* sformat
SV* format
PPCODE:
{
char *p_s;
const char *sp_s;
STRLEN sz, ssz;
dXSI32; /* ix */
const f_1arg_descr *desc = F1_get(ix);
int sizeof_elt = desc->codes_name[0];
int s_sizeof_elt = desc->codes_name[1];
if (dim && !(format && sformat))
LL_Array.xs view on Meta::CPAN
SV *s1_p
SV *s2_p
SV *p
I32 s1_offset
I32 s2_offset
I32 offset
int dim
SV* s1format
SV* s2format
SV* format
PPCODE:
{ /* Not implemented yet */
char *p_s;
const char *s1p_s, *s2p_s;
STRLEN sz, s1sz, s2sz;
dXSI32; /* ix */
const f_2arg_descr *desc = F2_get(ix);
int sizeof_elt = desc->codes_name[0];
int s1_sizeof_elt = desc->codes_name[1];
int s2_sizeof_elt = desc->codes_name[2];
LL_Array.xs view on Meta::CPAN
SV *s2_p
SV *s1_p
SV *p
I32 s2_offset
I32 s1_offset
I32 offset
int dim
SV* s2format
SV* s1format
SV* format
PPCODE:
{ /* Not implemented yet */
char *p_s;
const char *s1p_s, *s2p_s;
STRLEN sz, s1sz, s2sz;
dXSI32; /* ix */
const f_2arg_descr *desc = F2_get(ix);
int sizeof_elt = desc->codes_name[0];
int s1_sizeof_elt = desc->codes_name[1];
int s2_sizeof_elt = desc->codes_name[2];
( run in 0.673 second using v1.01-cache-2.11-cpan-5511b514fd6 )