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 )