| typedef struct _xmlHashTable | xmlHashTable |
| typedef xmlHashTable * | xmlHashTablePtr |
| typedef void(* | xmlHashDeallocator |
xmlHashDeallocator: Callback to free data from a hash.
| typedef void *(* | xmlHashCopier |
xmlHashCopier: Callback to copy data from a hash.
Returns a copy of the data or NULL in case of error.
| typedef void(* | xmlHashScanner |
xmlHashScanner: Callback when scanning data in a hash with the simple scanner.
| typedef void(* | xmlHashScannerFull |
xmlHashScannerFull: Callback when scanning data in a hash with the full scanner.
| XMLPUBFUN xmlHashTablePtr XMLCALL | xmlHashCreate | ( | int | size | ) |
xmlHashCreate: Create a new xmlHashTablePtr.
Returns the newly created object, or NULL if an error occured.
OOM: possible --> returns NULL, OOM flag is set
| Parameters | |
|---|---|
| size | the size of the hash table |
| XMLPUBFUN void XMLCALL | xmlHashFree | ( | xmlHashTablePtr | table, |
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashFree: Free the hash table and its contents. The userdata is deallocated with f if provided.
OOM: never // same as argument 'f' has when f!=NULL
| Parameters | |
|---|---|
| table | the hash table |
| f | the deallocator function for items in the hash |
| XMLPUBFUN int XMLCALL | xmlHashAddEntry | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| void * | userdata | |||
| ) | ||||
xmlHashAddEntry: Add the userdata to the hash table. This can later be retrieved by using the name. Duplicate names generate errors.
Returns 0 the addition succeeded and -1 in case of error.
OOM: iif returns -1 and flag is set
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| userdata | a pointer to the userdata |
| XMLPUBFUN int XMLCALL | xmlHashUpdateEntry | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| void * | userdata, | |||
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashUpdateEntry: 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.
Returns 0 the addition succeeded and -1 in case of error.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| userdata | a pointer to the userdata |
| f | the deallocator function for replaced item (if any) |
| XMLPUBFUN int XMLCALL | xmlHashAddEntry2 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| void * | userdata | |||
| ) | ||||
xmlHashAddEntry2: Add the userdata to the hash table. This can later be retrieved by using the (name, name2) tuple. Duplicate tuples generate errors.
Returns 0 the addition succeeded and -1 in case of error.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| userdata | a pointer to the userdata |
| XMLPUBFUN int XMLCALL | xmlHashUpdateEntry2 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| void * | userdata, | |||
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashUpdateEntry2: 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.
Returns 0 the addition succeeded and -1 in case of error.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| userdata | a pointer to the userdata |
| f | the deallocator function for replaced item (if any) |
| XMLPUBFUN int XMLCALL | xmlHashAddEntry3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | name3, | |||
| void * | userdata | |||
| ) | ||||
xmlHashAddEntry3: Add the userdata to the hash table. This can later be retrieved by using the tuple (name, name2, name3). Duplicate entries generate errors.
Returns 0 the addition succeeded and -1 in case of error.
OOM: iif returns -1 and flag is set
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| name3 | a third name of the userdata |
| userdata | a pointer to the userdata |
| XMLPUBFUN int XMLCALL | xmlHashUpdateEntry3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | name3, | |||
| void * | userdata, | |||
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashUpdateEntry3: 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.
Returns 0 the addition succeeded and -1 in case of error.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| name3 | a third name of the userdata |
| userdata | a pointer to the userdata |
| f | the deallocator function for replaced item (if any) |
| XMLPUBFUN int XMLCALL | xmlHashRemoveEntry | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashRemoveEntry: 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.
Returns 0 if the removal succeeded and -1 in case of error or not found.
OOM: never / same as argument function 'f' has, if f!=NULL*
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| f | the deallocator function for removed item (if any) |
| XMLPUBFUN int XMLCALL | xmlHashRemoveEntry2 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashRemoveEntry2: 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.
Returns 0 if the removal succeeded and -1 in case of error or not found.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| f | the deallocator function for removed item (if any) |
| XMLPUBFUN int XMLCALL | xmlHashRemoveEntry3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | name3, | |||
| xmlHashDeallocator | f | |||
| ) | ||||
xmlHashRemoveEntry3: 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.
Returns 0 if the removal succeeded and -1 in case of error or not found.
OOM: never / same as argument function 'f' has, if f!=NULL
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| name3 | a third name of the userdata |
| f | the deallocator function for removed item (if any) |
| XMLPUBFUN void *XMLCALL | xmlHashLookup | ( | xmlHashTablePtr | table, |
| const xmlChar * | name | |||
| ) | ||||
xmlHashLookup: Find the userdata specified by the name.
Returns the pointer to the userdata
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| XMLPUBFUN void *XMLCALL | xmlHashLookup2 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2 | |||
| ) | ||||
xmlHashLookup2: Find the userdata specified by the (name, name2) tuple.
Returns the pointer to the userdata
OOM: never
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| XMLPUBFUN void *XMLCALL | xmlHashLookup3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | name3 | |||
| ) | ||||
xmlHashLookup3: Find the userdata specified by the (name, name2, name3) tuple.
Returns the a pointer to the userdata
OOM: never
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| name2 | a second name of the userdata |
| name3 | a third name of the userdata |
| XMLPUBFUN void *XMLCALL | xmlHashQLookup | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | prefix | |||
| ) | ||||
xmlHashQLookup: Find the userdata specified by the QName prefix:name/name.
Returns the pointer to the userdata
OOM: never
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| prefix | the prefix of the userdata |
| XMLPUBFUN void *XMLCALL | xmlHashQLookup2 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | prefix, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | prefix2 | |||
| ) | ||||
xmlHashQLookup2: Find the userdata specified by the QNames tuple
Returns the pointer to the userdata
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| prefix | the prefix of the userdata |
| name2 | a second name of the userdata |
| prefix2 | the second prefix of the userdata |
| XMLPUBFUN void *XMLCALL | xmlHashQLookup3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | prefix, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | prefix2, | |||
| const xmlChar * | name3, | |||
| const xmlChar * | prefix3 | |||
| ) | ||||
xmlHashQLookup3: Find the userdata specified by the (name, name2, name3) tuple.
Returns the a pointer to the userdata
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata |
| prefix | the prefix of the userdata |
| name2 | a second name of the userdata |
| prefix2 | the second prefix of the userdata |
| name3 | a third name of the userdata |
| prefix3 | the third prefix of the userdata |
| XMLPUBFUN xmlHashTablePtr XMLCALL | xmlHashCopy | ( | xmlHashTablePtr | table, |
| xmlHashCopier | f | |||
| ) | ||||
xmlHashCopy: Scan the hash table and applied f to each value.
Returns the new table or NULL in case of error.
OOM: possible --> returns NULL, OOM flag is set
| Parameters | |
|---|---|
| table | the hash table |
| f | the copier function for items in the hash |
| XMLPUBFUN int XMLCALL | xmlHashSize | ( | xmlHashTablePtr | table | ) |
xmlHashSize: Query the number of elements installed in the hash table.
Returns the number of elements in the hash table or -1 in case of error
| Parameters | |
|---|---|
| table | the hash table |
| XMLPUBFUN void XMLCALL | xmlHashScan | ( | xmlHashTablePtr | table, |
| xmlHashScanner | f, | |||
| void * | data | |||
| ) | ||||
xmlHashScan: Scan the hash table and applied f to each value.
| Parameters | |
|---|---|
| table | the hash table |
| f | the scanner function for items in the hash |
| data | extra data passed to f |
| XMLPUBFUN void XMLCALL | xmlHashScan3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | name3, | |||
| xmlHashScanner | f, | |||
| void * | data | |||
| ) | ||||
xmlHashScan3: 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.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata or NULL |
| name2 | a second name of the userdata or NULL |
| name3 | a third name of the userdata or NULL |
| f | the scanner function for items in the hash |
| data | extra data passed to f |
| XMLPUBFUN void XMLCALL | xmlHashScanFull | ( | xmlHashTablePtr | table, |
| xmlHashScannerFull | f, | |||
| void * | data | |||
| ) | ||||
xmlHashScanFull: Scan the hash table and applied f to each value.
| Parameters | |
|---|---|
| table | the hash table |
| f | the scanner function for items in the hash |
| data | extra data passed to f |
| XMLPUBFUN void XMLCALL | xmlHashScanFull3 | ( | xmlHashTablePtr | table, |
| const xmlChar * | name, | |||
| const xmlChar * | name2, | |||
| const xmlChar * | name3, | |||
| xmlHashScannerFull | f, | |||
| void * | data | |||
| ) | ||||
xmlHashScanFull3: 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.
| Parameters | |
|---|---|
| table | the hash table |
| name | the name of the userdata or NULL |
| name2 | a second name of the userdata or NULL |
| name3 | a third name of the userdata or NULL |
| f | the scanner function for items in the hash |
| data | extra data passed to f |