Primesieve

 view release on metacpan or  search on metacpan

Primesieve.xs  view on Meta::CPAN

PROTOTYPES: ENABLE

void
generate_primes (start, stop)
        UV start
        UV stop
PREINIT:
        size_t i;
        size_t size;
        UV *ret;
PPCODE:
        ret = primesieve_generate_primes (start, stop, &size, UINT64_PRIMES);
        if (!size) {
                XSRETURN_EMPTY;
        }
        if (GIMME_V == G_ARRAY) {
                EXTEND (SP, size);
                for (i = 0; i < size; i++) {
                        mPUSHu (ret[i]);
                }
        } else {

Primesieve.xs  view on Meta::CPAN

        


void
generate_n_primes (n, start)
        UV n
        UV start
PREINIT:
        size_t i;
        UV *ret;
PPCODE:
        if (!n) {
                XSRETURN_EMPTY;
        }
        ret = (UV*) primesieve_generate_n_primes (n, start, UINT64_PRIMES);
        if (GIMME_V == G_ARRAY) {
                EXTEND (SP, n);
                for (i = 0; i < n; i++) {
                            mPUSHu (ret[i]);
                }
        } else {



( run in 1.820 second using v1.01-cache-2.11-cpan-5511b514fd6 )