libxml-hash.html   [plain text]


<HTML
><HEAD
><TITLE
>hash</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
"><LINK
REL="HOME"
TITLE="Gnome XML Library Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Libxml Library Reference"
HREF="libxml-lib.html"><LINK
REL="PREVIOUS"
TITLE="encoding"
HREF="libxml-encoding.html"><LINK
REL="NEXT"
TITLE="debugXML"
HREF="libxml-debugxml.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>Gnome XML Library Reference Manual</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxml-encoding.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxml-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxml-debugxml.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
></TABLE
></DIV
><H1
><A
NAME="LIBXML-HASH">hash</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN25507"
></A
><H2
>Name</H2
>hash&nbsp;--&nbsp;</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN25510"><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;

struct      <A
HREF="libxml-hash.html#XMLHASHTABLE"
>xmlHashTable</A
>;
typedef     <A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
>;
void        (<A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>*xmlHashDeallocator</A
>)           (void *payload,
                                             <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);
void*       (<A
HREF="libxml-hash.html#XMLHASHCOPIER"
>*xmlHashCopier</A
>)                (void *payload,
                                             <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);
void        (<A
HREF="libxml-hash.html#XMLHASHSCANNER"
>*xmlHashScanner</A
>)               (void *payload,
                                             void *data,
                                             <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);
void        (<A
HREF="libxml-hash.html#XMLHASHSCANNERFULL"
>*xmlHashScannerFull</A
>)           (void *payload,
                                             void *data,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3);
<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> <A
HREF="libxml-hash.html#XMLHASHCREATE"
>xmlHashCreate</A
>               (int size);
void        <A
HREF="libxml-hash.html#XMLHASHFREE"
>xmlHashFree</A
>                     (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHADDENTRY"
>xmlHashAddEntry</A
>                 (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             void *userdata);
int         <A
HREF="libxml-hash.html#XMLHASHUPDATEENTRY"
>xmlHashUpdateEntry</A
>              (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             void *userdata,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHADDENTRY2"
>xmlHashAddEntry2</A
>                (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             void *userdata);
int         <A
HREF="libxml-hash.html#XMLHASHUPDATEENTRY2"
>xmlHashUpdateEntry2</A
>             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             void *userdata,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHADDENTRY3"
>xmlHashAddEntry3</A
>                (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             void *userdata);
int         <A
HREF="libxml-hash.html#XMLHASHUPDATEENTRY3"
>xmlHashUpdateEntry3</A
>             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             void *userdata,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHREMOVEENTRY"
>xmlHashRemoveEntry</A
>              (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHREMOVEENTRY2"
>xmlHashRemoveEntry2</A
>             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHREMOVEENTRY3"
>xmlHashRemoveEntry3</A
>             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);
void*       <A
HREF="libxml-hash.html#XMLHASHLOOKUP"
>xmlHashLookup</A
>                   (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);
void*       <A
HREF="libxml-hash.html#XMLHASHLOOKUP2"
>xmlHashLookup2</A
>                  (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2);
void*       <A
HREF="libxml-hash.html#XMLHASHLOOKUP3"
>xmlHashLookup3</A
>                  (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3);
<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> <A
HREF="libxml-hash.html#XMLHASHCOPY"
>xmlHashCopy</A
>                 (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHCOPIER"
>xmlHashCopier</A
> f);
int         <A
HREF="libxml-hash.html#XMLHASHSIZE"
>xmlHashSize</A
>                     (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table);
void        <A
HREF="libxml-hash.html#XMLHASHSCAN"
>xmlHashScan</A
>                     (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNER"
>xmlHashScanner</A
> f,
                                             void *data);
void        <A
HREF="libxml-hash.html#XMLHASHSCAN3"
>xmlHashScan3</A
>                    (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNER"
>xmlHashScanner</A
> f,
                                             void *data);
void        <A
HREF="libxml-hash.html#XMLHASHSCANFULL"
>xmlHashScanFull</A
>                 (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNERFULL"
>xmlHashScannerFull</A
> f,
                                             void *data);
void        <A
HREF="libxml-hash.html#XMLHASHSCANFULL3"
>xmlHashScanFull3</A
>                (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNERFULL"
>xmlHashScannerFull</A
> f,
                                             void *data);</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN25608"
></A
><H2
>Description</H2
><P
></P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN25611"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN25613"
></A
><H3
><A
NAME="XMLHASHTABLE"
></A
>struct xmlHashTable</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xmlHashTable;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25618"
></A
><H3
><A
NAME="XMLHASHTABLEPTR"
></A
>xmlHashTablePtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlHashTable *xmlHashTablePtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25623"
></A
><H3
><A
NAME="XMLHASHDEALLOCATOR"
></A
>xmlHashDeallocator ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        (*xmlHashDeallocator)           (void *payload,
                                             <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);</PRE
></TD
></TR
></TABLE
><P
>Callback to free data from a hash.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25630"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>payload</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the data in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the name associated</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25643"
></A
><H3
><A
NAME="XMLHASHCOPIER"
></A
>xmlHashCopier ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       (*xmlHashCopier)                (void *payload,
                                             <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);</PRE
></TD
></TR
></TABLE
><P
>Callback to copy data from a hash.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25650"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>payload</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the data in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the name associated</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25663"
></A
><H3
><A
NAME="XMLHASHSCANNER"
></A
>xmlHashScanner ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        (*xmlHashScanner)               (void *payload,
                                             void *data,
                                             <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);</PRE
></TD
></TR
></TABLE
><P
>Callback when scanning data in a hash with the simple scanner.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25670"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>payload</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the data in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  extra scannner data</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the name associated</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25687"
></A
><H3
><A
NAME="XMLHASHSCANNERFULL"
></A
>xmlHashScannerFull ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        (*xmlHashScannerFull)           (void *payload,
                                             void *data,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3);</PRE
></TD
></TR
></TABLE
><P
>Callback when scanning data in a hash with the full scanner.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25696"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>payload</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the data in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  extra scannner data</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the name associated</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the second name associated</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the third name associated</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25721"
></A
><H3
><A
NAME="XMLHASHCREATE"
></A
>xmlHashCreate ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> xmlHashCreate               (int size);</PRE
></TD
></TR
></TABLE
><P
>Create a new xmlHashTablePtr.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25728"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>size</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the size of the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the newly created object, or NULL if an error occured.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25741"
></A
><H3
><A
NAME="XMLHASHFREE"
></A
>xmlHashFree ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlHashFree                     (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Free the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
> and its contents. The userdata is
deallocated with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> if provided.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25751"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the deallocator function for items in the hash</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25764"
></A
><H3
><A
NAME="XMLHASHADDENTRY"
></A
>xmlHashAddEntry ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashAddEntry                 (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             void *userdata);</PRE
></TD
></TR
></TABLE
><P
>Add the <TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
> to the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. This can later be retrieved
by using the <TT
CLASS="PARAMETER"
><I
>name</I
></TT
>. Duplicate names generate errors.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25775"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 the addition succeeded and -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25796"
></A
><H3
><A
NAME="XMLHASHUPDATEENTRY"
></A
>xmlHashUpdateEntry ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashUpdateEntry              (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             void *userdata,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Add the <TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
> to the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. This can later be retrieved
by using the <TT
CLASS="PARAMETER"
><I
>name</I
></TT
>. Existing entry for this <TT
CLASS="PARAMETER"
><I
>name</I
></TT
> will be removed
and freed with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> if found.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25810"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the deallocator function for replaced item (if any)</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 the addition succeeded and -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25835"
></A
><H3
><A
NAME="XMLHASHADDENTRY2"
></A
>xmlHashAddEntry2 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashAddEntry2                (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             void *userdata);</PRE
></TD
></TR
></TABLE
><P
>Add the <TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
> to the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. This can later be retrieved
by using the (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>) tuple. Duplicate tuples generate errors.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25848"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 the addition succeeded and -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25873"
></A
><H3
><A
NAME="XMLHASHUPDATEENTRY2"
></A
>xmlHashUpdateEntry2 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashUpdateEntry2             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             void *userdata,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Add the <TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
> to the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. This can later be retrieved
by using the (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>) tuple. Existing entry for this tuple will
be removed and freed with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> if found.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25888"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the deallocator function for replaced item (if any)</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 the addition succeeded and -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25917"
></A
><H3
><A
NAME="XMLHASHADDENTRY3"
></A
>xmlHashAddEntry3 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashAddEntry3                (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             void *userdata);</PRE
></TD
></TR
></TABLE
><P
>Add the <TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
> to the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. This can later be retrieved
by using the tuple (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>). Duplicate entries generate
errors.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25932"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a third name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 the addition succeeded and -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN25961"
></A
><H3
><A
NAME="XMLHASHUPDATEENTRY3"
></A
>xmlHashUpdateEntry3 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashUpdateEntry3             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             void *userdata,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Add the <TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
> to the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. This can later be retrieved
by using the tuple (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>). Existing entry for this tuple
will be removed and freed with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> if found.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN25978"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a third name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>userdata</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the deallocator function for replaced item (if any)</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 the addition succeeded and -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26011"
></A
><H3
><A
NAME="XMLHASHREMOVEENTRY"
></A
>xmlHashRemoveEntry ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashRemoveEntry              (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Find the userdata specified by the <TT
CLASS="PARAMETER"
><I
>name</I
></TT
> and remove
it from the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. Existing userdata for this tuple will be removed
and freed with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26023"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the deallocator function for removed item (if any)</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 if the removal succeeded and -1 in case of error or not found.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26044"
></A
><H3
><A
NAME="XMLHASHREMOVEENTRY2"
></A
>xmlHashRemoveEntry2 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashRemoveEntry2             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Find the userdata specified by the (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>) tuple and remove
it from the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. Existing userdata for this tuple will be removed
and freed with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26058"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the deallocator function for removed item (if any)</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 if the removal succeeded and -1 in case of error or not found.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26083"
></A
><H3
><A
NAME="XMLHASHREMOVEENTRY3"
></A
>xmlHashRemoveEntry3 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashRemoveEntry3             (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             <A
HREF="libxml-hash.html#XMLHASHDEALLOCATOR"
>xmlHashDeallocator</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Find the userdata specified by the (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>) tuple and remove
it from the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>. Existing userdata for this tuple will be removed
and freed with <TT
CLASS="PARAMETER"
><I
>f</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26099"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a third name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the deallocator function for removed item (if any)</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>0 if the removal succeeded and -1 in case of error or not found.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26128"
></A
><H3
><A
NAME="XMLHASHLOOKUP"
></A
>xmlHashLookup ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       xmlHashLookup                   (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name);</PRE
></TD
></TR
></TABLE
><P
>Find the userdata specified by the <TT
CLASS="PARAMETER"
><I
>name</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26137"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26150"
></A
><H3
><A
NAME="XMLHASHLOOKUP2"
></A
>xmlHashLookup2 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       xmlHashLookup2                  (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2);</PRE
></TD
></TR
></TABLE
><P
>Find the userdata specified by the (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>) tuple.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26161"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26178"
></A
><H3
><A
NAME="XMLHASHLOOKUP3"
></A
>xmlHashLookup3 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       xmlHashLookup3                  (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3);</PRE
></TD
></TR
></TABLE
><P
>Find the userdata specified by the (<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>) tuple.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26191"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a third name of the userdata</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26212"
></A
><H3
><A
NAME="XMLHASHCOPY"
></A
>xmlHashCopy ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> xmlHashCopy                 (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHCOPIER"
>xmlHashCopier</A
> f);</PRE
></TD
></TR
></TABLE
><P
>Scan the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
> and applied <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> to each value.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26223"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the copier function for items in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new table or NULL in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26240"
></A
><H3
><A
NAME="XMLHASHSIZE"
></A
>xmlHashSize ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlHashSize                     (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table);</PRE
></TD
></TR
></TABLE
><P
>Query the number of elements installed in the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26248"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of elements in the hash table or
-1 in case of error</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26261"
></A
><H3
><A
NAME="XMLHASHSCAN"
></A
>xmlHashScan ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlHashScan                     (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNER"
>xmlHashScanner</A
> f,
                                             void *data);</PRE
></TD
></TR
></TABLE
><P
>Scan the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
> and applied <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> to each value.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26271"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the scanner function for items in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  extra data passed to f</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26288"
></A
><H3
><A
NAME="XMLHASHSCAN3"
></A
>xmlHashScan3 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlHashScan3                    (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNER"
>xmlHashScanner</A
> f,
                                             void *data);</PRE
></TD
></TR
></TABLE
><P
>Scan the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
> and applied <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> to each value matching
(<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>) tuple. If one of the names is null,
the comparison is considered to match.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26304"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a third name of the userdata or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the scanner function for items in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  extra data passed to f</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26333"
></A
><H3
><A
NAME="XMLHASHSCANFULL"
></A
>xmlHashScanFull ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlHashScanFull                 (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNERFULL"
>xmlHashScannerFull</A
> f,
                                             void *data);</PRE
></TD
></TR
></TABLE
><P
>Scan the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
> and applied <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> to each value.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26343"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the scanner function for items in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  extra data passed to f</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN26360"
></A
><H3
><A
NAME="XMLHASHSCANFULL3"
></A
>xmlHashScanFull3 ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlHashScanFull3                (<A
HREF="libxml-hash.html#XMLHASHTABLEPTR"
>xmlHashTablePtr</A
> table,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name2,
                                             const <A
HREF="libxml-tree.html#XMLCHAR"
>xmlChar</A
> *name3,
                                             <A
HREF="libxml-hash.html#XMLHASHSCANNERFULL"
>xmlHashScannerFull</A
> f,
                                             void *data);</PRE
></TD
></TR
></TABLE
><P
>Scan the hash <TT
CLASS="PARAMETER"
><I
>table</I
></TT
> and applied <TT
CLASS="PARAMETER"
><I
>f</I
></TT
> to each value matching
(<TT
CLASS="PARAMETER"
><I
>name</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>, <TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>) tuple. If one of the names is null,
the comparison is considered to match.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN26376"><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>table</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the hash table</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the name of the userdata or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name2</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a second name of the userdata or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name3</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a third name of the userdata or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>f</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the scanner function for items in the hash</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  extra data passed to f</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxml-encoding.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxml-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxml-debugxml.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>encoding</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>debugXML</B
></FONT
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>