Sort-Key
view release on metacpan or search on metacpan
ALIAS:
lkeysort = 1
nkeysort = 2
ikeysort = 3
ukeysort = 4
rkeysort = 128
rlkeysort = 129
rnkeysort = 130
rikeysort = 131
rukeysort = 132
PPCODE:
items--;
if (items) {
_keysort(aTHX_ ix, keygen, 0, 1, ax, items);
SPAGAIN;
SP = &ST(items-1);
}
void
keysort_inplace(SV *keygen, AV *values)
ALIAS:
lkeysort_inplace = 1
nkeysort_inplace = 2
ikeysort_inplace = 3
ukeysort_inplace = 4
rkeysort_inplace = 128
rlkeysort_inplace = 129
rnkeysort_inplace = 130
rikeysort_inplace = 131
rukeysort_inplace = 132
PPCODE:
if ((len=av_len(values)+1)) {
/* warn("ix=%d\n", ix); */
if (SvMAGICAL(values) || AvREIFY(values)) {
int i;
magic_values = values;
values = (AV*)sv_2mortal((SV*)newAV());
av_extend(values, len-1);
for (i=0; i<len; i++) {
SV **currentp = av_fetch(magic_values, i, 0);
av_store( values, i,
ALIAS:
lsort = 1
nsort = 2
isort = 3
usort = 4
rsort = 128
rlsort = 129
rnsort = 130
risort = 131
rusort = 132
PPCODE:
if (items) {
_keysort(aTHX_ ix, 0, 0, 0, ax, items);
SPAGAIN;
SP = &ST(items-1);
}
void
_sort_inplace(AV *values)
PROTOTYPE: \@
PREINIT:
ALIAS:
lsort_inplace = 1
nsort_inplace = 2
isort_inplace = 3
usort_inplace = 4
rsort_inplace = 128
rlsort_inplace = 129
rnsort_inplace = 130
risort_inplace = 131
rusort_inplace = 132
PPCODE:
if ((len=av_len(values)+1)) {
/* warn("ix=%d\n", ix); */
if (SvMAGICAL(values) || AvREIFY(values)) {
int i;
magic_values = values;
values = (AV*)sv_2mortal((SV*)newAV());
av_extend(values, len-1);
for (i=0; i<len; i++) {
SV **currentp = av_fetch(magic_values, i, 0);
av_store( values, i,
( run in 2.319 seconds using v1.01-cache-2.11-cpan-5511b514fd6 )