summaryrefslogtreecommitdiff
path: root/sorters.h
blob: 0a63a8933274906efe10c5bcdc701943b21bbac1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef SORTERS_H
#define SORTERS_H

#include <stddef.h>
#include "common.h"

void musl_smoothsort(void *, size_t, size_t, cmpfun);
void musl_heapsort(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);
void wikisort_ref(void *, size_t, size_t, cmpfun);
void grailsort(void *, size_t, size_t, cmpfun);
void grailsort_ref(void *, size_t, size_t, cmpfun);

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

#endif