![]() | ![]() | ![]() | Gnome XML Library Reference Manual | ![]() |
---|
list —
struct xmlLink; typedef xmlLinkPtr; struct xmlList; typedef xmlListPtr; void (*xmlListDeallocator) (xmlLinkPtr lk); int (*xmlListDataCompare) (const void *data0, const void *data1); int (*xmlListWalker) (const void *data, const void *user); xmlListPtr xmlListCreate (xmlListDeallocator deallocator, xmlListDataCompare compare); void xmlListDelete (xmlListPtr l); void* xmlListSearch (xmlListPtr l, void *data); void* xmlListReverseSearch (xmlListPtr l, void *data); int xmlListInsert (xmlListPtr l, void *data); int xmlListAppend (xmlListPtr l, void *data); int xmlListRemoveFirst (xmlListPtr l, void *data); int xmlListRemoveLast (xmlListPtr l, void *data); int xmlListRemoveAll (xmlListPtr l, void *data); void xmlListClear (xmlListPtr l); int xmlListEmpty (xmlListPtr l); xmlLinkPtr xmlListFront (xmlListPtr l); xmlLinkPtr xmlListEnd (xmlListPtr l); int xmlListSize (xmlListPtr l); void xmlListPopFront (xmlListPtr l); void xmlListPopBack (xmlListPtr l); int xmlListPushFront (xmlListPtr l, void *data); int xmlListPushBack (xmlListPtr l, void *data); void xmlListReverse (xmlListPtr l); void xmlListSort (xmlListPtr l); void xmlListWalk (xmlListPtr l, xmlListWalker walker, const void *user); void xmlListReverseWalk (xmlListPtr l, xmlListWalker walker, const void *user); void xmlListMerge (xmlListPtr l1, xmlListPtr l2); xmlListPtr xmlListDup (const xmlListPtr old); int xmlListCopy (xmlListPtr cur, const xmlListPtr old); void* xmlLinkGetData (xmlLinkPtr lk);
void (*xmlListDeallocator) (xmlLinkPtr lk);
Callback function used to free data from a list.
lk: | the data to deallocate |
int (*xmlListDataCompare) (const void *data0, const void *data1);
Callback function used to compare 2 data.
data0: | the first data |
data1: | the second data |
Returns : | 0 is equality, -1 or 1 otherwise depending on the ordering. |
int (*xmlListWalker) (const void *data, const void *user);
Callback function used when walking a list with xmlListWalk().
data: | the data found in the list |
user: | extra user provided data to the walker |
Returns : | 0 to stop walking the list, 1 otherwise. |
xmlListPtr xmlListCreate (xmlListDeallocator deallocator, xmlListDataCompare compare);
Create a new list
deallocator: | an optional deallocator function |
compare: | an optional comparison function |
Returns : | the new list or NULL in case of error |
void xmlListDelete (xmlListPtr l);
Deletes the list and its associated data
l: | a list |
void* xmlListSearch (xmlListPtr l, void *data);
Search the list for an existing value of data
l: | a list |
data: | a search value |
void* xmlListReverseSearch (xmlListPtr l, void *data);
Search the list in reverse order for an existing value of data
l: | a list |
data: | a search value |
int xmlListInsert (xmlListPtr l, void *data);
Insert data in the ordered list at the beginning for this value
l: | a list |
data: | the data |
Returns : | 0 in case of success, 1 in case of failure |
int xmlListAppend (xmlListPtr l, void *data);
Insert data in the ordered list at the end for this value
l: | a list |
data: | the data |
Returns : | 0 in case of success, 1 in case of failure |
int xmlListRemoveFirst (xmlListPtr l, void *data);
Remove the first instance associated to data in the list
l: | a list |
data: | list data |
Returns : | 1 if a deallocation occured, or 0 if not found |
int xmlListRemoveLast (xmlListPtr l, void *data);
Remove the last instance associated to data in the list
l: | a list |
data: | list data |
Returns : | 1 if a deallocation occured, or 0 if not found |
int xmlListRemoveAll (xmlListPtr l, void *data);
Remove the all instance associated to data in the list
l: | a list |
data: | list data |
Returns : | the number of deallocation, or 0 if not found |
int xmlListEmpty (xmlListPtr l);
Is the list empty ?
l: | a list |
Returns : | 1 if the list is empty, 0 otherwise |
xmlLinkPtr xmlListFront (xmlListPtr l);
Get the first element in the list
l: | a list |
Returns : | the first element in the list, or NULL |
xmlLinkPtr xmlListEnd (xmlListPtr l);
Get the last element in the list
l: | a list |
Returns : | the last element in the list, or NULL |
int xmlListSize (xmlListPtr l);
Get the number of elements in the list
l: | a list |
Returns : | the number of elements in the list |
void xmlListPopFront (xmlListPtr l);
Removes the first element in the list
l: | a list |
int xmlListPushFront (xmlListPtr l, void *data);
add the new data at the beginning of the list
l: | a list |
data: | new data |
Returns : | 1 if successful, 0 otherwise |
int xmlListPushBack (xmlListPtr l, void *data);
add the new data at the end of the list
l: | a list |
data: | new data |
Returns : | 1 if successful, 0 otherwise |
void xmlListReverse (xmlListPtr l);
Reverse the order of the elements in the list
l: | a list |
void xmlListWalk (xmlListPtr l, xmlListWalker walker, const void *user);
Walk all the element of the first from first to last and apply the walker function to it
l: | a list |
walker: | a processing function |
user: | a user parameter passed to the walker function |
void xmlListReverseWalk (xmlListPtr l, xmlListWalker walker, const void *user);
Walk all the element of the list in reverse order and apply the walker function to it
l: | a list |
walker: | a processing function |
user: | a user parameter passed to the walker function |
void xmlListMerge (xmlListPtr l1, xmlListPtr l2);
include all the elements of the second list in the first one and clear the second list
l1: | the original list |
l2: | the new list |
xmlListPtr xmlListDup (const xmlListPtr old);
Duplicate the list
old: | the list |
Returns : | a new copy of the list or NULL in case of error |
int xmlListCopy (xmlListPtr cur, const xmlListPtr old);
Move all the element from the old list in the new list
cur: | the new list |
old: | the old list |
Returns : | 0 in case of success 1 in case of error |
<< xmlversion | HTMLtree >> |