diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2011-03-29 20:51:30 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2011-03-29 20:51:30 +0200 |
commit | 2400cc5143383a881356a9f55e93b60037d851e5 (patch) | |
tree | 3ba75f8b1225bf50e48b4f6c381e7772f1ab6c5b /awk.h | |
parent | 4fe569fb78dd1b25822c16c9cac515a0fc6702a4 (diff) | |
download | egawk-2400cc5143383a881356a9f55e93b60037d851e5.tar.gz egawk-2400cc5143383a881356a9f55e93b60037d851e5.tar.bz2 egawk-2400cc5143383a881356a9f55e93b60037d851e5.zip |
Revise array sorting for PROCINFO["sorted_in"].
Diffstat (limited to 'awk.h')
-rw-r--r-- | awk.h | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -846,6 +846,9 @@ struct flagtab { #endif #define UNLIMITED LONG_MAX +/* qsort comparison function */ +typedef int (*qsort_compfunc)(const void *,const void *); + /* -------------------------- External variables -------------------------- */ /* gawk builtin variables */ extern long NF; @@ -1123,6 +1126,9 @@ extern NODE *assoc_dump(NODE *symbol, int indent_level); extern NODE *do_adump(int nargs); extern NODE *do_asort(int nargs); extern NODE *do_asorti(int nargs); +extern int comp_func(const void *p1, const void *p2); +extern qsort_compfunc sorted_in(void); +extern void sort_maybe_numeric_index(qsort_compfunc, NODE **, size_t, int); extern unsigned long (*hash)(const char *s, size_t len, unsigned long hsize, size_t *code); /* awkgram.c */ extern NODE *mk_symbol(NODETYPE type, NODE *value); @@ -1205,7 +1211,6 @@ extern void PUSH_CODE(INSTRUCTION *cp); extern INSTRUCTION *POP_CODE(void); extern int interpret(INSTRUCTION *); extern int cmp_nodes(NODE *, NODE *); -extern int comp_func(const void *p1, const void *p2); extern void set_IGNORECASE(void); extern void set_OFS(void); extern void set_ORS(void); |