linked list definitions More...
#include "common.h"#include "config.h"#include "collection.h"#include "mempool.h"Go to the source code of this file.
Data Structures | |
| struct | _cp_list_entry |
| Internal object that references the content and links to the neighbour entries. More... | |
| struct | _cp_list |
| doubly linked list type. More... | |
| struct | _cp_list_iterator |
| iterator helper-class of cp_list. More... | |
|
| |
| #define | cp_list_rdlock(list) cp_list_lock(list, COLLECTION_LOCK_READ) |
| Set a read lock on the object. | |
| #define | cp_list_wrlock(list) cp_list_lock(list, COLLECTION_LOCK_WRITE) |
| Set a write lock on the object. | |
|
__BEGIN_DECLS typedef CPROPS_DLL struct _cp_list_entry | cp_list_entry |
| Internal object that references the content and links to the neighbour entries. | |
| typedef CPROPS_DLL struct _cp_list | cp_list |
| doubly linked list type. | |
|
typedef CPROPS_DLL struct _cp_list_iterator | cp_list_iterator |
| iterator helper-class of cp_list. | |
| CPROPS_DLL cp_list * | cp_list_create () |
| Default constructor. | |
| CPROPS_DLL cp_list * | cp_list_create_nosync () |
| CPROPS_DLL cp_list * | cp_list_create_list (int mode, cp_compare_fn compare_fn, cp_copy_fn copy_fn, cp_destructor_fn item_destructor) |
| Constructor. | |
| CPROPS_DLL cp_list * | cp_list_create_view (int mode, cp_compare_fn compare_fn, cp_copy_fn copy_fn, cp_destructor_fn item_destructor, cp_lock *lock) |
| CPROPS_DLL void | cp_list_destroy (cp_list *) |
| Destroy the object with the mode stored in the list. | |
| CPROPS_DLL void | cp_list_destroy_by_option (cp_list *list, int option) |
| Destroy the object with the specified mode (override default). | |
| CPROPS_DLL void | cp_list_destroy_custom (cp_list *list, cp_destructor_fn fn) |
| Destroy the object and all contained elements. | |
| CPROPS_DLL void * | cp_list_insert (cp_list *list, void *item) |
| Insert a new element at the beginning of the list. | |
| CPROPS_DLL void * | cp_list_remove (cp_list *list, void *item) |
| Remove the element from the list. | |
| CPROPS_DLL void * | cp_list_insert_after (cp_list *list, void *item, void *existing) |
| Insert the element after an existing one. | |
| CPROPS_DLL void * | cp_list_insert_before (cp_list *list, void *item, void *existing) |
| Insert the element before an existing one. | |
| CPROPS_DLL void * | cp_list_search (cp_list *list, void *item) |
| Get the first element that equals the parameter. | |
| CPROPS_DLL int | cp_list_callback (cp_list *l, int(*item_action)(void *, void *), void *id) |
| run a callback on each item. | |
| CPROPS_DLL void * | cp_list_append (cp_list *list, void *item) |
| Append the element at the end of the list. | |
| CPROPS_DLL void * | cp_list_get_head (cp_list *list) |
| Returns the first element of the list. | |
| CPROPS_DLL void * | cp_list_get_tail (cp_list *list) |
| Returns the last element of the list. | |
| CPROPS_DLL void * | cp_list_remove_head (cp_list *list) |
| remove and release first entry | |
| CPROPS_DLL void * | cp_list_remove_tail (cp_list *list) |
| remove and release last entry | |
| CPROPS_DLL int | cp_list_is_empty (cp_list *list) |
| Test if object is empty. | |
| CPROPS_DLL long | cp_list_item_count (cp_list *) |
| Get the number of elements in the collection. | |
| CPROPS_DLL int | cp_list_lock (cp_list *list, int mode) |
| Locks the collection with the specified mode. | |
| CPROPS_DLL int | cp_list_unlock (cp_list *list) |
| Unlock the object. | |
| CPROPS_DLL int | cp_list_use_mempool (cp_list *list, cp_mempool *pool) |
| CPROPS_DLL int | cp_list_share_mempool (cp_list *list, cp_shared_mempool *pool) |
| CPROPS_DLL int | cp_list_iterator_init (cp_list_iterator *iterator, cp_list *list, int lock_mode) |
| Initialize the Iterator at the first position. | |
| CPROPS_DLL int | cp_list_iterator_init_tail (cp_list_iterator *iterator, cp_list *list, int lock_mode) |
| Initialize the Iterator at the end. | |
| CPROPS_DLL cp_list_iterator * | cp_list_create_iterator (cp_list *list, int lock_mode) |
| create a new iterator and initialize it at the beginning of the list. | |
| CPROPS_DLL int | cp_list_iterator_head (cp_list_iterator *iterator) |
| Move the iterator to the beginning of the list. | |
| CPROPS_DLL int | cp_list_iterator_tail (cp_list_iterator *iterator) |
| Move the iterator to the end of the list. | |
| CPROPS_DLL int | cp_list_iterator_destroy (cp_list_iterator *iterator) |
| CPROPS_DLL int | cp_list_iterator_release (cp_list_iterator *iterator) |
| unlock the list the iterator is operating on. | |
| CPROPS_DLL void * | cp_list_iterator_next (cp_list_iterator *iterator) |
| Go to the next entry in the list and return the content. | |
| CPROPS_DLL void * | cp_list_iterator_prev (cp_list_iterator *iterator) |
| Go to the previous entry in the list and return the content. | |
| CPROPS_DLL void * | cp_list_iterator_curr (cp_list_iterator *iterator) |
| returns the value at the current iterator position | |
| CPROPS_DLL void * | cp_list_iterator_insert (cp_list_iterator *iterator, void *item) |
| insert item to the list just before the current iterator position. | |
| CPROPS_DLL void * | cp_list_iterator_append (cp_list_iterator *iterator, void *item) |
| append item to the list just after the current iterator position. | |
| CPROPS_DLL void * | cp_list_iterator_remove (cp_list_iterator *iterator) |
| delete the item at the current iterator position. | |
linked list definitions
1.7.1