summaryrefslogtreecommitdiff
path: root/sorters.h
blob: d451813e0a9722b33d685ebb39c9f221b5343542 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stddef.h>

void assert_sorted(int *buffer, size_t size);

typedef int  (*cmpfun)(const void *, const void *);
typedef void (*sorter)(void *, size_t, size_t, cmpfun);

void musl_qsort(void *, size_t, size_t, cmpfun);
void glibc_quicksort(void *, size_t, size_t, cmpfun);
void glibc_mergesort(void *, size_t, size_t, cmpfun);
void freebsd_qsort(void *, size_t, size_t, cmpfun);
void wikisort(void *, size_t, size_t, cmpfun);

extern const struct sorter {
	const char *name;
	sorter func;
} sorters[];