00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __XML_LINK_INCLUDE__
00019 #define __XML_LINK_INCLUDE__
00020
00021 #include <libxml/xmlversion.h>
00022
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026
00027 typedef struct _xmlLink xmlLink;
00028 typedef xmlLink *xmlLinkPtr;
00029
00030 typedef struct _xmlList xmlList;
00031 typedef xmlList *xmlListPtr;
00032
00039 typedef void (*xmlListDeallocator) (xmlLinkPtr lk);
00049 typedef int (*xmlListDataCompare) (const void *data0, const void *data1);
00059 typedef int (*xmlListWalker) (const void *data, const void *user);
00060
00061
00062 XMLPUBFUN xmlListPtr XMLCALL
00063 xmlListCreate (xmlListDeallocator deallocator,
00064 xmlListDataCompare compare);
00065 XMLPUBFUN void XMLCALL
00066 xmlListDelete (xmlListPtr l);
00067
00068
00069 XMLPUBFUN void * XMLCALL
00070 xmlListSearch (xmlListPtr l,
00071 void *data);
00072 XMLPUBFUN void * XMLCALL
00073 xmlListReverseSearch (xmlListPtr l,
00074 void *data);
00075 XMLPUBFUN int XMLCALL
00076 xmlListInsert (xmlListPtr l,
00077 void *data) ;
00078 XMLPUBFUN int XMLCALL
00079 xmlListAppend (xmlListPtr l,
00080 void *data) ;
00081 XMLPUBFUN int XMLCALL
00082 xmlListRemoveFirst (xmlListPtr l,
00083 void *data);
00084 XMLPUBFUN int XMLCALL
00085 xmlListRemoveLast (xmlListPtr l,
00086 void *data);
00087 XMLPUBFUN int XMLCALL
00088 xmlListRemoveAll (xmlListPtr l,
00089 void *data);
00090 XMLPUBFUN void XMLCALL
00091 xmlListClear (xmlListPtr l);
00092 XMLPUBFUN int XMLCALL
00093 xmlListEmpty (xmlListPtr l);
00094 XMLPUBFUN xmlLinkPtr XMLCALL
00095 xmlListFront (xmlListPtr l);
00096 XMLPUBFUN xmlLinkPtr XMLCALL
00097 xmlListEnd (xmlListPtr l);
00098 XMLPUBFUN int XMLCALL
00099 xmlListSize (xmlListPtr l);
00100
00101 XMLPUBFUN void XMLCALL
00102 xmlListPopFront (xmlListPtr l);
00103 XMLPUBFUN void XMLCALL
00104 xmlListPopBack (xmlListPtr l);
00105 XMLPUBFUN int XMLCALL
00106 xmlListPushFront (xmlListPtr l,
00107 void *data);
00108 XMLPUBFUN int XMLCALL
00109 xmlListPushBack (xmlListPtr l,
00110 void *data);
00111
00112
00113 XMLPUBFUN void XMLCALL
00114 xmlListReverse (xmlListPtr l);
00115 XMLPUBFUN void XMLCALL
00116 xmlListSort (xmlListPtr l);
00117 XMLPUBFUN void XMLCALL
00118 xmlListWalk (xmlListPtr l,
00119 xmlListWalker walker,
00120 const void *user);
00121 XMLPUBFUN void XMLCALL
00122 xmlListReverseWalk (xmlListPtr l,
00123 xmlListWalker walker,
00124 const void *user);
00125 XMLPUBFUN void XMLCALL
00126 xmlListMerge (xmlListPtr l1,
00127 xmlListPtr l2);
00128 XMLPUBFUN xmlListPtr XMLCALL
00129 xmlListDup (const xmlListPtr old);
00130 XMLPUBFUN int XMLCALL
00131 xmlListCopy (xmlListPtr cur,
00132 const xmlListPtr old);
00133
00134 XMLPUBFUN void * XMLCALL
00135 xmlLinkGetData (xmlLinkPtr lk);
00136
00137
00138
00139
00140 #ifdef __cplusplus
00141 }
00142 #endif
00143
00144 #endif
00145