diff options
author | Frederik Deweerdt <frederik.deweerdt@gmail.com> | 2011-10-07 21:07:18 +0200 |
---|---|---|
committer | Frederik Deweerdt <frederik.deweerdt@gmail.com> | 2011-10-07 21:07:18 +0200 |
commit | c43871c86693f34ae143da2d53a3370c670e5554 (patch) | |
tree | 8d7caf42bafaf5db6c998ab1bd0a44fa54bc1693 /arraylist.c | |
parent | a8ffbe97b0414ce62fd2d697dcf9e76c7514362a (diff) | |
download | json-c-c43871c86693f34ae143da2d53a3370c670e5554.tar.gz |
Add new json_object_array_sort function
- uses libc's qsort to sort the arraylist
- add test in test1.c
Diffstat (limited to 'arraylist.c')
-rw-r--r-- | arraylist.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arraylist.c b/arraylist.c index cd04eea..9a673d6 100644 --- a/arraylist.c +++ b/arraylist.c @@ -87,6 +87,13 @@ array_list_add(struct array_list *arr, void *data) return array_list_put_idx(arr, arr->length, data); } +void +array_list_sort(struct array_list *arr, int(*sort_fn)(const void *, const void *)) +{ + qsort(arr->array, arr->length, sizeof(arr->array[0]), + (int (*)(const void *, const void *))sort_fn); +} + int array_list_length(struct array_list *arr) { |