137 lines · 3.3 KB · C
RawDownload
/* * Summary: lists interfaces * Description: this module implement the list support used in * various place in the library. * * Copy: See Copyright for the status of this software. * * Author: Gary Pennington <Gary.Pennington@uk.sun.com> */ #ifndef __XML_LINK_INCLUDE__#define __XML_LINK_INCLUDE__ #include <libxml/xmlversion.h> #ifdef __cplusplusextern "C" {#endif typedef struct _xmlLink xmlLink;typedef xmlLink *xmlLinkPtr; typedef struct _xmlList xmlList;typedef xmlList *xmlListPtr; /** * xmlListDeallocator: * @lk:  the data to deallocate * * Callback function used to free data from a list. */typedef void (*xmlListDeallocator) (xmlLinkPtr lk);/** * xmlListDataCompare: * @data0: the first data * @data1: the second data * * Callback function used to compare 2 data. * * Returns 0 is equality, -1 or 1 otherwise depending on the ordering. */typedef int  (*xmlListDataCompare) (const void *data0, const void *data1);/** * xmlListWalker: * @data: the data found in the list * @user: extra user provided data to the walker * * Callback function used when walking a list with xmlListWalk(). * * Returns 0 to stop walking the list, 1 otherwise. */typedef int (*xmlListWalker) (const void *data, const void *user); /* Creation/Deletion */XMLPUBFUN xmlListPtr XMLCALL		xmlListCreate		(xmlListDeallocator deallocator,	                                 xmlListDataCompare compare);XMLPUBFUN void XMLCALL		xmlListDelete		(xmlListPtr l); /* Basic Operators */XMLPUBFUN void * XMLCALL		xmlListSearch		(xmlListPtr l,					 void *data);XMLPUBFUN void * XMLCALL		xmlListReverseSearch	(xmlListPtr l,					 void *data);XMLPUBFUN int XMLCALL		xmlListInsert		(xmlListPtr l,					 void *data) ;XMLPUBFUN int XMLCALL		xmlListAppend		(xmlListPtr l,					 void *data) ;XMLPUBFUN int XMLCALL		xmlListRemoveFirst	(xmlListPtr l,					 void *data);XMLPUBFUN int XMLCALL		xmlListRemoveLast	(xmlListPtr l,					 void *data);XMLPUBFUN int XMLCALL		xmlListRemoveAll	(xmlListPtr l,					 void *data);XMLPUBFUN void XMLCALL		xmlListClear		(xmlListPtr l);XMLPUBFUN int XMLCALL		xmlListEmpty		(xmlListPtr l);XMLPUBFUN xmlLinkPtr XMLCALL		xmlListFront		(xmlListPtr l);XMLPUBFUN xmlLinkPtr XMLCALL		xmlListEnd		(xmlListPtr l);XMLPUBFUN int XMLCALL		xmlListSize		(xmlListPtr l); XMLPUBFUN void XMLCALL		xmlListPopFront		(xmlListPtr l);XMLPUBFUN void XMLCALL		xmlListPopBack		(xmlListPtr l);XMLPUBFUN int XMLCALL		xmlListPushFront	(xmlListPtr l,					 void *data);XMLPUBFUN int XMLCALL		xmlListPushBack		(xmlListPtr l,					 void *data); /* Advanced Operators */XMLPUBFUN void XMLCALL		xmlListReverse		(xmlListPtr l);XMLPUBFUN void XMLCALL		xmlListSort		(xmlListPtr l);XMLPUBFUN void XMLCALL		xmlListWalk		(xmlListPtr l,					 xmlListWalker walker,					 const void *user);XMLPUBFUN void XMLCALL		xmlListReverseWalk	(xmlListPtr l,					 xmlListWalker walker,					 const void *user);XMLPUBFUN void XMLCALL		xmlListMerge		(xmlListPtr l1,					 xmlListPtr l2);XMLPUBFUN xmlListPtr XMLCALL		xmlListDup		(const xmlListPtr old);XMLPUBFUN int XMLCALL		xmlListCopy		(xmlListPtr cur,					 const xmlListPtr old);/* Link operators */XMLPUBFUN void * XMLCALL		xmlLinkGetData          (xmlLinkPtr lk); /* xmlListUnique() *//* xmlListSwap */ #ifdef __cplusplus}#endif #endif /* __XML_LINK_INCLUDE__ */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t