1.1 --- a/ucx/list.h Mon Jul 22 14:51:52 2013 +0200 1.2 +++ b/ucx/list.h Tue Jul 23 12:06:28 2013 +0200 1.3 @@ -37,6 +37,7 @@ 1.4 #define UCX_LIST_H 1.5 1.6 #include "ucx.h" 1.7 +#include "allocator.h" 1.8 #include <stddef.h> 1.9 1.10 #ifdef __cplusplus 1.11 @@ -81,7 +82,9 @@ 1.12 UcxList *prev; 1.13 }; 1.14 1.15 -UcxList *ucx_list_clone(UcxList *l, copy_func fnc, void* data); 1.16 +UcxList *ucx_list_clone(UcxList *list, copy_func cpyfnc, void* data); 1.17 +UcxList *ucx_list_clone_a(UcxAllocator *allocator, UcxList *list, 1.18 + copy_func cpyfnc, void* data); 1.19 1.20 /** 1.21 * Compares two UCX lists element-wise by using a compare function. 1.22 @@ -116,8 +119,11 @@ 1.23 * @param list The list to free. 1.24 */ 1.25 void ucx_list_free(UcxList *list); 1.26 +void ucx_list_free_a(UcxAllocator *allocator, UcxList *list); 1.27 UcxList *ucx_list_append(UcxList *list, void *data); 1.28 +UcxList *ucx_list_append_a(UcxAllocator *allocator, UcxList *list, void *data); 1.29 UcxList *ucx_list_prepend(UcxList *list, void *data); 1.30 +UcxList *ucx_list_prepend_a(UcxAllocator *allocator, UcxList *list, void *data); 1.31 UcxList *ucx_list_concat(UcxList *list1, UcxList *list2); 1.32 /** 1.33 * Returns the first element of a list. 1.34 @@ -162,6 +168,8 @@ 1.35 * is now empty 1.36 */ 1.37 UcxList *ucx_list_remove(UcxList *list, UcxList *element); 1.38 +UcxList *ucx_list_remove_a(UcxAllocator *allocator, UcxList *list, 1.39 + UcxList *element); 1.40 1.41 #ifdef __cplusplus 1.42 }