|
Packit Service |
a31ea6 |
|
|
Packit Service |
a31ea6 |
|
|
Packit Service |
a31ea6 |
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="SHORTCUT ICON" href="/favicon.ico" /><style type="text/css">
|
|
Packit Service |
a31ea6 |
TD {font-family: Verdana,Arial,Helvetica}
|
|
Packit Service |
a31ea6 |
BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
|
|
Packit Service |
a31ea6 |
H1 {font-family: Verdana,Arial,Helvetica}
|
|
Packit Service |
a31ea6 |
H2 {font-family: Verdana,Arial,Helvetica}
|
|
Packit Service |
a31ea6 |
H3 {font-family: Verdana,Arial,Helvetica}
|
|
Packit Service |
a31ea6 |
A:link, A:visited, A:active { text-decoration: underline }
|
|
Packit Service |
a31ea6 |
</style><style type="text/css">
|
|
Packit Service |
a31ea6 |
div.deprecated pre.programlisting {border-style: double;border-color:red}
|
|
Packit Service |
a31ea6 |
pre.programlisting {border-style: double;background: #EECFA1}
|
|
Packit Service |
a31ea6 |
</style><title>Module hash from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><center>API Menu</center> | <form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form> |
<center>API Indexes</center> | |
<center>Related links</center> | |
|
| This module implements the hash table support used in various places in the library. Table of Contents#define XML_CAST_FPTR Structure xmlHashTable struct _xmlHashTable |
|
|
|
|
|
|
Packit Service |
a31ea6 |
The content of this structure is not made public by the API.
|
|
Packit Service |
a31ea6 |
Typedef xmlHashTable * xmlHashTablePtr
|
|
Packit Service |
a31ea6 |
int xmlHashAddEntry (xmlHashTablePtr table, const xmlChar * name, void * userdata)
|
|
Packit Service |
a31ea6 |
int xmlHashAddEntry2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, void * userdata)
|
|
Packit Service |
a31ea6 |
int xmlHashAddEntry3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, void * userdata)
|
|
Packit Service |
a31ea6 |
Function type: xmlHashCopier
|
|
Packit Service |
a31ea6 |
void * xmlHashCopier (void * payload, xmlChar * name)
|
|
Packit Service |
a31ea6 |
|
|
Packit Service |
a31ea6 |
xmlHashTablePtr xmlHashCopy (xmlHashTablePtr table, xmlHashCopier f)
|
|
Packit Service |
a31ea6 |
xmlHashTablePtr xmlHashCreate (int size)
|
|
Packit Service |
a31ea6 |
xmlHashTablePtr xmlHashCreateDict (int size, xmlDictPtr dict)
|
|
Packit Service |
a31ea6 |
Function type: xmlHashDeallocator
|
|
Packit Service |
a31ea6 |
void xmlHashDeallocator (void * payload, xmlChar * name)
|
|
Packit Service |
a31ea6 |
|
|
Packit Service |
a31ea6 |
void xmlHashFree (xmlHashTablePtr table, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
void * xmlHashLookup (xmlHashTablePtr table, const xmlChar * name)
|
|
Packit Service |
a31ea6 |
void * xmlHashLookup2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2)
|
|
Packit Service |
a31ea6 |
void * xmlHashLookup3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3)
|
|
Packit Service |
a31ea6 |
void * xmlHashQLookup (xmlHashTablePtr table, const xmlChar * prefix, const xmlChar * name)
|
|
Packit Service |
a31ea6 |
void * xmlHashQLookup2 (xmlHashTablePtr table, const xmlChar * prefix, const xmlChar * name, const xmlChar * prefix2, const xmlChar * name2)
|
|
Packit Service |
a31ea6 |
void * xmlHashQLookup3 (xmlHashTablePtr table, const xmlChar * prefix, const xmlChar * name, const xmlChar * prefix2, const xmlChar * name2, const xmlChar * prefix3, const xmlChar * name3)
|
|
Packit Service |
a31ea6 |
int xmlHashRemoveEntry (xmlHashTablePtr table, const xmlChar * name, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
int xmlHashRemoveEntry2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
int xmlHashRemoveEntry3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
void xmlHashScan (xmlHashTablePtr table, xmlHashScanner f, void * data)
|
|
Packit Service |
a31ea6 |
void xmlHashScan3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, xmlHashScanner f, void * data)
|
|
Packit Service |
a31ea6 |
void xmlHashScanFull (xmlHashTablePtr table, xmlHashScannerFull f, void * data)
|
|
Packit Service |
a31ea6 |
void xmlHashScanFull3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, xmlHashScannerFull f, void * data)
|
|
Packit Service |
a31ea6 |
Function type: xmlHashScanner
|
|
Packit Service |
a31ea6 |
void xmlHashScanner (void * payload, void * data, xmlChar * name)
|
|
Packit Service |
a31ea6 |
|
|
Packit Service |
a31ea6 |
Function type: xmlHashScannerFull
|
|
Packit Service |
a31ea6 |
void xmlHashScannerFull (void * payload, void * data, const xmlChar * name, const xmlChar * name2, const xmlChar * name3)
|
|
Packit Service |
a31ea6 |
|
|
Packit Service |
a31ea6 |
int xmlHashSize (xmlHashTablePtr table)
|
|
Packit Service |
a31ea6 |
int xmlHashUpdateEntry (xmlHashTablePtr table, const xmlChar * name, void * userdata, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
int xmlHashUpdateEntry2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, void * userdata, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
int xmlHashUpdateEntry3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, void * userdata, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Description
|
|
Packit Service |
a31ea6 |
Macro: XML_CAST_FPTR#define XML_CAST_FPTR Macro to do a casting from an object pointer to a function pointer without encountering a warning from gcc #define XML_CAST_FPTR(fptr) (*(void **)(&fptr)) This macro violated ISO C aliasing rules (gcc4 on s390 broke) so it is disabled now
|
|
Packit Service |
a31ea6 |
Structure xmlHashTable struct _xmlHashTable {
|
|
Packit Service |
a31ea6 |
The content of this structure is not made public by the API.
|
|
Packit Service |
a31ea6 |
}Function: xmlHashAddEntryint xmlHashAddEntry (xmlHashTablePtr table, const xmlChar * name, void * userdata)
|
|
Packit Service |
a31ea6 |
Add the @userdata to the hash @table. This can later be retrieved by using the @name. Duplicate names generate errors.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>userdata</tt>: | a pointer to the userdata | <tt>Returns</tt>: | 0 the addition succeeded and -1 in case of error. |
Function: xmlHashAddEntry2int xmlHashAddEntry2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, void * userdata)
|
|
Packit Service |
a31ea6 |
Add the @userdata to the hash @table. This can later be retrieved by using the (@name, @name2) tuple. Duplicate tuples generate errors.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>userdata</tt>: | a pointer to the userdata | <tt>Returns</tt>: | 0 the addition succeeded and -1 in case of error. |
Function: xmlHashAddEntry3int xmlHashAddEntry3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, void * userdata)
|
|
Packit Service |
a31ea6 |
Add the @userdata to the hash @table. This can later be retrieved by using the tuple (@name, @name2, @name3). Duplicate entries generate errors.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>name3</tt>: | a third name of the userdata | <tt>userdata</tt>: | a pointer to the userdata | <tt>Returns</tt>: | 0 the addition succeeded and -1 in case of error. |
Function type: xmlHashCopierFunction type: xmlHashCopier
|
|
Packit Service |
a31ea6 |
void * xmlHashCopier (void * payload, xmlChar * name)
|
|
Packit Service |
a31ea6 |
Callback to copy data from a hash. <tt>payload</tt>: | the data in the hash | <tt>name</tt>: | the name associated | <tt>Returns</tt>: | a copy of the data or NULL in case of error. |
|
|
Packit Service |
a31ea6 |
Function: xmlHashCopyxmlHashTablePtr xmlHashCopy (xmlHashTablePtr table, xmlHashCopier f)
|
|
Packit Service |
a31ea6 |
Scan the hash @table and applied @f to each value.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>f</tt>: | the copier function for items in the hash | <tt>Returns</tt>: | the new table or NULL in case of error. |
Function: xmlHashCreatexmlHashTablePtr xmlHashCreate (int size)
|
|
Packit Service |
a31ea6 |
Create a new xmlHashTablePtr.
|
|
Packit Service |
a31ea6 |
<tt>size</tt>: | the size of the hash table | <tt>Returns</tt>: | the newly created object, or NULL if an error occurred. |
Function: xmlHashCreateDictxmlHashTablePtr xmlHashCreateDict (int size, xmlDictPtr dict)
|
|
Packit Service |
a31ea6 |
Create a new xmlHashTablePtr which will use @dict as the internal dictionary
|
|
Packit Service |
a31ea6 |
<tt>size</tt>: | the size of the hash table | <tt>dict</tt>: | a dictionary to use for the hash | <tt>Returns</tt>: | the newly created object, or NULL if an error occurred. |
Function type: xmlHashDeallocatorFunction type: xmlHashDeallocator
|
|
Packit Service |
a31ea6 |
void xmlHashDeallocator (void * payload, xmlChar * name)
|
|
Packit Service |
a31ea6 |
Callback to free data from a hash. <tt>payload</tt>: | the data in the hash | <tt>name</tt>: | the name associated |
|
|
Packit Service |
a31ea6 |
Function: xmlHashFreevoid xmlHashFree (xmlHashTablePtr table, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Free the hash @table and its contents. The userdata is deallocated with @f if provided.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>f</tt>: | the deallocator function for items in the hash |
Function: xmlHashLookupvoid * xmlHashLookup (xmlHashTablePtr table, const xmlChar * name)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the @name.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>Returns</tt>: | the pointer to the userdata |
Function: xmlHashLookup2void * xmlHashLookup2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the (@name, @name2) tuple.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>Returns</tt>: | the pointer to the userdata |
Function: xmlHashLookup3void * xmlHashLookup3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the (@name, @name2, @name3) tuple.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>name3</tt>: | a third name of the userdata | <tt>Returns</tt>: | the a pointer to the userdata |
Function: xmlHashQLookupvoid * xmlHashQLookup (xmlHashTablePtr table, const xmlChar * prefix, const xmlChar * name)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the QName @prefix:@name/@name.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>prefix</tt>: | the prefix of the userdata | <tt>name</tt>: | the name of the userdata | <tt>Returns</tt>: | the pointer to the userdata |
Function: xmlHashQLookup2void * xmlHashQLookup2 (xmlHashTablePtr table, const xmlChar * prefix, const xmlChar * name, const xmlChar * prefix2, const xmlChar * name2)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the QNames tuple
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>prefix</tt>: | the prefix of the userdata | <tt>name</tt>: | the name of the userdata | <tt>prefix2</tt>: | the second prefix of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>Returns</tt>: | the pointer to the userdata |
Function: xmlHashQLookup3void * xmlHashQLookup3 (xmlHashTablePtr table, const xmlChar * prefix, const xmlChar * name, const xmlChar * prefix2, const xmlChar * name2, const xmlChar * prefix3, const xmlChar * name3)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the (@name, @name2, @name3) tuple.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>prefix</tt>: | the prefix of the userdata | <tt>name</tt>: | the name of the userdata | <tt>prefix2</tt>: | the second prefix of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>prefix3</tt>: | the third prefix of the userdata | <tt>name3</tt>: | a third name of the userdata | <tt>Returns</tt>: | the a pointer to the userdata |
Function: xmlHashRemoveEntryint xmlHashRemoveEntry (xmlHashTablePtr table, const xmlChar * name, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the @name and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>f</tt>: | the deallocator function for removed item (if any) | <tt>Returns</tt>: | 0 if the removal succeeded and -1 in case of error or not found. |
Function: xmlHashRemoveEntry2int xmlHashRemoveEntry2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the (@name, @name2) tuple and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>f</tt>: | the deallocator function for removed item (if any) | <tt>Returns</tt>: | 0 if the removal succeeded and -1 in case of error or not found. |
Function: xmlHashRemoveEntry3int xmlHashRemoveEntry3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Find the userdata specified by the (@name, @name2, @name3) tuple and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>name3</tt>: | a third name of the userdata | <tt>f</tt>: | the deallocator function for removed item (if any) | <tt>Returns</tt>: | 0 if the removal succeeded and -1 in case of error or not found. |
Function: xmlHashScanvoid xmlHashScan (xmlHashTablePtr table, xmlHashScanner f, void * data)
|
|
Packit Service |
a31ea6 |
Scan the hash @table and applied @f to each value.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>f</tt>: | the scanner function for items in the hash | <tt>data</tt>: | extra data passed to f |
Function: xmlHashScan3void xmlHashScan3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, xmlHashScanner f, void * data)
|
|
Packit Service |
a31ea6 |
Scan the hash @table and applied @f to each value matching (@name, @name2, @name3) tuple. If one of the names is null, the comparison is considered to match.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata or NULL | <tt>name2</tt>: | a second name of the userdata or NULL | <tt>name3</tt>: | a third name of the userdata or NULL | <tt>f</tt>: | the scanner function for items in the hash | <tt>data</tt>: | extra data passed to f |
Function: xmlHashScanFullvoid xmlHashScanFull (xmlHashTablePtr table, xmlHashScannerFull f, void * data)
|
|
Packit Service |
a31ea6 |
Scan the hash @table and applied @f to each value.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>f</tt>: | the scanner function for items in the hash | <tt>data</tt>: | extra data passed to f |
Function: xmlHashScanFull3void xmlHashScanFull3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, xmlHashScannerFull f, void * data)
|
|
Packit Service |
a31ea6 |
Scan the hash @table and applied @f to each value matching (@name, @name2, @name3) tuple. If one of the names is null, the comparison is considered to match.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata or NULL | <tt>name2</tt>: | a second name of the userdata or NULL | <tt>name3</tt>: | a third name of the userdata or NULL | <tt>f</tt>: | the scanner function for items in the hash | <tt>data</tt>: | extra data passed to f |
Function type: xmlHashScannerFunction type: xmlHashScanner
|
|
Packit Service |
a31ea6 |
void xmlHashScanner (void * payload, void * data, xmlChar * name)
|
|
Packit Service |
a31ea6 |
Callback when scanning data in a hash with the simple scanner. <tt>payload</tt>: | the data in the hash | <tt>data</tt>: | extra scannner data | <tt>name</tt>: | the name associated |
|
|
Packit Service |
a31ea6 |
Function type: xmlHashScannerFullFunction type: xmlHashScannerFull
|
|
Packit Service |
a31ea6 |
void xmlHashScannerFull (void * payload, void * data, const xmlChar * name, const xmlChar * name2, const xmlChar * name3)
|
|
Packit Service |
a31ea6 |
Callback when scanning data in a hash with the full scanner. <tt>payload</tt>: | the data in the hash | <tt>data</tt>: | extra scannner data | <tt>name</tt>: | the name associated | <tt>name2</tt>: | the second name associated | <tt>name3</tt>: | the third name associated |
|
|
Packit Service |
a31ea6 |
Function: xmlHashSizeint xmlHashSize (xmlHashTablePtr table)
|
|
Packit Service |
a31ea6 |
Query the number of elements installed in the hash @table.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>Returns</tt>: | the number of elements in the hash table or -1 in case of error |
Function: xmlHashUpdateEntryint xmlHashUpdateEntry (xmlHashTablePtr table, const xmlChar * name, void * userdata, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Add the @userdata to the hash @table. This can later be retrieved by using the @name. Existing entry for this @name will be removed and freed with @f if found.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>userdata</tt>: | a pointer to the userdata | <tt>f</tt>: | the deallocator function for replaced item (if any) | <tt>Returns</tt>: | 0 the addition succeeded and -1 in case of error. |
Function: xmlHashUpdateEntry2int xmlHashUpdateEntry2 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, void * userdata, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Add the @userdata to the hash @table. This can later be retrieved by using the (@name, @name2) tuple. Existing entry for this tuple will be removed and freed with @f if found.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>userdata</tt>: | a pointer to the userdata | <tt>f</tt>: | the deallocator function for replaced item (if any) | <tt>Returns</tt>: | 0 the addition succeeded and -1 in case of error. |
Function: xmlHashUpdateEntry3int xmlHashUpdateEntry3 (xmlHashTablePtr table, const xmlChar * name, const xmlChar * name2, const xmlChar * name3, void * userdata, xmlHashDeallocator f)
|
|
Packit Service |
a31ea6 |
Add the @userdata to the hash @table. This can later be retrieved by using the tuple (@name, @name2, @name3). Existing entry for this tuple will be removed and freed with @f if found.
|
|
Packit Service |
a31ea6 |
<tt>table</tt>: | the hash table | <tt>name</tt>: | the name of the userdata | <tt>name2</tt>: | a second name of the userdata | <tt>name3</tt>: | a third name of the userdata | <tt>userdata</tt>: | a pointer to the userdata | <tt>f</tt>: | the deallocator function for replaced item (if any) | <tt>Returns</tt>: | 0 the addition succeeded and -1 in case of error. |
Daniel Veillard </body></html>
|