summaryrefslogtreecommitdiff
path: root/arraylist.c
diff options
context:
space:
mode:
authorFrederik Deweerdt <frederik.deweerdt@gmail.com>2011-10-07 21:07:18 +0200
committerFrederik Deweerdt <frederik.deweerdt@gmail.com>2011-10-07 21:07:18 +0200
commitc43871c86693f34ae143da2d53a3370c670e5554 (patch)
tree8d7caf42bafaf5db6c998ab1bd0a44fa54bc1693 /arraylist.c
parenta8ffbe97b0414ce62fd2d697dcf9e76c7514362a (diff)
downloadjson-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.c7
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)
{