Bit-Grep

 view release on metacpan or  search on metacpan

Grep.xs  view on Meta::CPAN



MODULE = Bit::Grep		PACKAGE = Bit::Grep		
PROTOTYPES: DISABLE

void
bg_grep(vec, ...)
    SV *vec;
PREINIT:
    SV **to;
PPCODE:
    to = &(ST(0));
    iterate(aTHX_ vec, &(ST(1)), items - 1, &bg_grep_cb, &to);
    XSRETURN(to - &(ST(0)));
  
NV
bg_sum(vec, ...)
    SV *vec;
CODE:
    RETVAL = 0;
    iterate(aTHX_ vec, &(ST(1)), items - 1, &bg_sum_cb, &RETVAL);
OUTPUT:
    RETVAL

void
bg_count_and_sum(vec, ...)
    SV *vec;
PREINIT:
    struct bg_stats_state state;
PPCODE:
    state.count = 0;
    state.sum   = 0;
    iterate(aTHX_ vec, &(ST(1)), items - 1, &bg_count_and_sum_cb, &state);
    mXPUSHi(state.count);
    mXPUSHn(state.sum);
    XSRETURN(2);

void
bg_count_sum_and_sum2(vec, ...)
    SV *vec;
PREINIT:
    struct bg_stats_state state;
PPCODE:
    state.count = 0;
    state.sum   = 0;
    state.sum2  = 0;
    iterate(aTHX_ vec, &(ST(1)), items - 1, &bg_count_sum_and_sum2_cb, &state);
    mXPUSHi(state.count);
    mXPUSHn(state.sum);
    mXPUSHn(state.sum2);
    XSRETURN(3);

SV *



( run in 2.165 seconds using v1.01-cache-2.11-cpan-71847e10f99 )