50 res->
data = newElement;
55 if (res->
next != NULL)
68 res->
data = newElement;
73 if (res->
prev != NULL)
94 if (list->
head == NULL)
112 if (list->
tail == NULL)
122 if (node->
prev != NULL)
124 if (node->
next != NULL)
127 if (list->
head == node)
129 if (list->
tail == node)
148 while (node != NULL && cmp(node->
data, data) == 0)
c_Utility_ErrorCode_t c_linkedlist_insert_first(c_linkedlist_t *list, void *newElement)
static int _simplecompare(const void *d1, const void *d2)
c_linkedlist_t c_linkedlist_create()
c_listnode_t * c_linkedlist_insert_before(c_listnode_t *node, void *newElement)
struct c_listnode_t * next
void * c_linkedlist_delete_data_compare(c_linkedlist_t *list, void *data, c_listdata_comparator_t cmp)
void * c_linkedlist_delete(c_linkedlist_t *list, c_listnode_t *node)
void * c_malloc(size_t size)
c_Utility_ErrorCode_t c_linkedlist_insert_last(c_linkedlist_t *list, void *newElement)
Generic wrappers to platform-dependent functions.
void * c_linkedlist_delete_first(c_linkedlist_t *list)
struct c_listnode_t * prev
#define c_use_decl_annotations
int(* c_listdata_comparator_t)(const void *, const void *)
c_Utility_ErrorCode_t
Library return codes.
void * c_linkedlist_delete_last(c_linkedlist_t *list)
void * c_linkedlist_delete_data(c_linkedlist_t *list, void *data)
c_listnode_t * c_linkedlist_insert_after(c_listnode_t *node, void *newElement)