-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
mergesort: rename it to llist_mergesort()
Even though the function is generic enough, <anything>sort() inherits connotations from the standard function qsort() that sorts an array. Rename it to llist_mergesort() and describe the external interface in its header file. This incidentally avoids name clashes with mergesort() some platforms declare in, and contaminate user namespace with, their <stdlib.h>. Reported-by: Brian Gernhardt Signed-off-by: Junio C Hamano <gitster@pobox.com>
- Loading branch information
Junio C Hamano
committed
Apr 17, 2012
1 parent
fbc08ea
commit 7365c95
Showing
4 changed files
with
19 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,17 @@ | ||
#ifndef MERGESORT_H | ||
#define MERGESORT_H | ||
|
||
void *mergesort(void *list, | ||
void *(*get_next_fn)(const void *), | ||
void (*set_next_fn)(void *, void *), | ||
int (*compare_fn)(const void *, const void *)); | ||
/* | ||
* Sort linked list in place. | ||
* - get_next_fn() returns the next element given an element of a linked list. | ||
* - set_next_fn() takes two elements A and B, and makes B the "next" element | ||
* of A on the list. | ||
* - compare_fn() takes two elements A and B, and returns negative, 0, positive | ||
* as the same sign as "subtracting" B from A. | ||
*/ | ||
void *llist_mergesort(void *list, | ||
void *(*get_next_fn)(const void *), | ||
void (*set_next_fn)(void *, void *), | ||
int (*compare_fn)(const void *, const void *)); | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters