Sort-Key-Top

 view release on metacpan or  search on metacpan

Top.xs  view on Meta::CPAN

ALIAS:
        lkeytop = 1
        nkeytop = 2
        ikeytop = 3
        ukeytop = 4
        rkeytop = 128
        rlkeytop = 129
        rnkeytop = 130
        rikeytop = 131
        rukeytop = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, top, 0, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
top(IV top, ...)
PROTOTYPE: @
ALIAS:
        ltop = 1
        ntop = 2
        itop = 3
        utop = 4
        rtop = 128
        rltop = 129
        rntop = 130
        ritop = 131
        rutop = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, top, 0, MODE_SORT, items-1, ax, (GIMME_V == G_ARRAY)));

void
keypart(SV *keygen, IV top, ...)
PROTOTYPE: &@
ALIAS:
        lkeypart = 1
        nkeypart = 2
        ikeypart = 3
        ukeypart = 4
        rkeypart = 128
        rlkeypart = 129
        rnkeypart = 130
        rikeypart = 131
        rukeypart = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, top, MODE_PART, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
part(IV top, ...)
PROTOTYPE: @
ALIAS:
        lpart = 1
        npart = 2
        ipart = 3
        upart = 4
        rpart = 128
        rlpart = 129
        rnpart = 130
        ripart = 131
        rupart = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, top, MODE_PART, 1, items-1, ax, (GIMME_V == G_ARRAY)));

void
keypartref(SV *keygen, IV top, ...)
PROTOTYPE: &@
ALIAS:
        lkeypartref = 1
        nkeypartref = 2
        ikeypartref = 3
        ukeypartref = 4
        rkeypartref = 128
        rlkeypartref = 129
        rnkeypartref = 130
        rikeypartref = 131
        rukeypartref = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, top, MODE_PARTREF, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
partref(IV top, ...)
PROTOTYPE: @
ALIAS:
        lpartref = 1
        npartref = 2
        ipartref = 3
        upartref = 4
        rpartref = 128
        rlpartref = 129
        rnpartref = 130
        ripartref = 131
        rupartref = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, top, MODE_PARTREF, 1, items-1, ax, (GIMME_V == G_ARRAY)));

void
keytopsort(SV *keygen, IV top, ...)
PROTOTYPE: &@
ALIAS:
        lkeytopsort = 1
        nkeytopsort = 2
        ikeytopsort = 3
        ukeytopsort = 4
        rkeytopsort = 128
        rlkeytopsort = 129
        rnkeytopsort = 130
        rikeytopsort = 131
        rukeytopsort = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, top, MODE_SORT, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
topsort(IV top, ...)
PROTOTYPE: @
ALIAS:
        ltopsort = 1
        ntopsort = 2
        itopsort = 3
        utopsort = 4
        rtopsort = 128
        rltopsort = 129
        rntopsort = 130
        ritopsort = 131
        rutopsort = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, top, MODE_SORT, 1, items-1, ax, (GIMME_V == G_ARRAY)));

void
keyhead(SV *keygen, ...)
PROTOTYPE: &@
ALIAS:
        lkeyhead = 1
        nkeyhead = 2
        ikeyhead = 3
        ukeyhead = 4
        rkeyhead = 128
        rlkeyhead = 129
        rnkeyhead = 130
        rikeyhead = 131
        rukeyhead = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, 1, 0, 1, items-1, ax, 0));

void
keytail(SV *keygen, ...)
PROTOTYPE: &@
ALIAS:
        lkeytail = 1
        nkeytail = 2
        ikeytail = 3
        ukeytail = 4
        rkeytail = 128
        rlkeytail = 129
        rnkeytail = 130
        rikeytail = 131
        rukeytail = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, -1, 0, 1, items-1, ax, 0));

void
head(...)
PROTOTYPE: @
ALIAS:
        lhead = 1
        nhead = 2
        ihead = 3
        uhead = 4
        rhead = 128
        rlhead = 129
        rnhead = 130
        rihead = 131
        ruhead = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, 1, 0, 0, items, ax, 0));

void
tail(...)
PROTOTYPE: @
ALIAS:
        ltail = 1
        ntail = 2
        itail = 3
        utail = 4
        rtail = 128
        rltail = 129
        rntail = 130
        ritail = 131
        rutail = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, -1, 0, 0, items, ax, 0));

void
keyatpos(SV *keygen, IV n, ...)
PROTOTYPE: &@
ALIAS:
        lkeyatpos = 1
        nkeyatpos = 2
        ikeyatpos = 3
        ukeyatpos = 4
        rkeyatpos = 128
        rlkeyatpos = 129
        rnkeyatpos = 130
        rikeyatpos = 131
        rukeyatpos = 132
PPCODE:
        check_keygen(aTHX_ keygen);
        XSRETURN(_keytop(aTHX_ ix, keygen, (n < 0 ? n : n + 1), 1, 2, items-2, ax, 0));

void
atpos(IV n, ...)
PROTOTYPE: @
ALIAS:
        latpos = 1
        natpos = 2
        iatpos = 3
        uatpos = 4
        ratpos = 128
        rlatpos = 129
        rnatpos = 130
        riatpos = 131
        ruatpos = 132
PPCODE:
        XSRETURN(_keytop(aTHX_ ix, 0, (n < 0 ? n : n + 1), 1, 1, items-1, ax, 0));

void
slottop(SV *slot, IV top, ...)
PROTOTYPE: @
ALIAS:
        lslottop = 1
        nslottop = 2
        islottop = 3
        uslottop = 4
        rslottop = 128
        rlslottop = 129
        rnslottop = 130
        rislottop = 131
        ruslottop = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, top, 0, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
slotpart(SV *slot, IV top, ...)
PROTOTYPE: @
ALIAS:
        lslotpart = 1
        nslotpart = 2
        islotpart = 3
        uslotpart = 4
        rslotpart = 128
        rlslotpart = 129
        rnslotpart = 130
        rislotpart = 131
        ruslotpart = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, top, MODE_PART, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
slotpartref(SV *slot, IV top, ...)
PROTOTYPE: @
ALIAS:
        lslotpartref = 1
        nslotpartref = 2
        islotpartref = 3
        uslotpartref = 4
        rslotpartref = 128
        rlslotpartref = 129
        rnslotpartref = 130
        rislotpartref = 131
        ruslotpartref = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, top, MODE_PARTREF, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
slottopsort(SV *slot, IV top, ...)
PROTOTYPE: @
ALIAS:
        lslottopsort = 1
        nslottopsort = 2
        islottopsort = 3
        uslottopsort = 4
        rslottopsort = 128
        rlslottopsort = 129
        rnslottopsort = 130
        rislottopsort = 131
        ruslottopsort = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, top, MODE_SORT, 2, items-2, ax, (GIMME_V == G_ARRAY)));

void
slothead(SV *slot, ...)
PROTOTYPE: @
ALIAS:
        lslothead = 1
        nslothead = 2
        islothead = 3
        uslothead = 4
        rslothead = 128
        rlslothead = 129
        rnslothead = 130
        rislothead = 131
        ruslothead = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, 1, 0, 1, items-1, ax, 0));

void
slottail(SV *slot, ...)
PROTOTYPE: @
ALIAS:
        lslottail = 1
        nslottail = 2
        islottail = 3
        uslottail = 4
        rslottail = 128
        rlslottail = 129
        rnslottail = 130
        rislottail = 131
        ruslottail = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, -1, 0, 1, items-1, ax, 0));

void
slotatpos(SV *slot, IV n, ...)
PROTOTYPE: @
ALIAS:
        lslotatpos = 1
        nslotatpos = 2
        islotatpos = 3
        uslotatpos = 4
        rslotatpos = 128
        rlslotatpos = 129
        rnslotatpos = 130
        rislotatpos = 131
        ruslotatpos = 132
PPCODE:
        check_slot(aTHX_ slot);
        XSRETURN(_keytop(aTHX_ ix, slot, (n < 0 ? n : n + 1), 1, 2, items-2, ax, 0));



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