55 unsigned long returnItemNo = 0lu;
57 assert(nnMap && name);
58 if (!nnMap || !name) {
59 return (
unsigned long)IXML_INVALID_ITEM_NUMBER;
62 tempNode = nnMap->nodeItem;
64 if (strcmp(name, tempNode->nodeName) == 0) {
67 tempNode = tempNode->nextSibling;
71 return (
unsigned long)IXML_INVALID_ITEM_NUMBER;
84 if (!nnMap || !name) {
89 if (index == (
unsigned long)IXML_INVALID_ITEM_NUMBER) {
98 unsigned long index) {
110 tempNode = nnMap->nodeItem;
111 for (i = 0u; i < index && tempNode; ++i) {
112 tempNode = tempNode->nextSibling;
120 unsigned long length = 0lu;
123 tempNode = nnMap->nodeItem;
124 for (length = 0lu; tempNode; ++length) {
125 tempNode = tempNode->nextSibling;
156 return IXML_INSUFFICIENT_MEMORY;
160 if (!(*nnMap)->nodeItem) {
161 (*nnMap)->nodeItem = add;
167 traverse = traverse->next;
171 return IXML_INSUFFICIENT_MEMORY;
174 newItem->nodeItem = add;
175 newItem->next = NULL;
Data structure common to all types of nodes.
Data structure representing a list of named nodes.
unsigned long ixmlNamedNodeMap_getLength(IXML_NamedNodeMap *nnMap)
Returns the number of items contained in this NamedNodeMap.
#define DOMString
The type of DOM strings.
IXML_Node * ixmlNamedNodeMap_getNamedItem(IXML_NamedNodeMap *nnMap, const DOMString name)
Retrieves a Node from the NamedNodeMap by name.
IXML_Node * ixmlNamedNodeMap_item(IXML_NamedNodeMap *nnMap, unsigned long index)
Retrieves the index_th item in the map. If index is greater than or equal to the number of nodes in t...
void ixmlNamedNodeMap_free(IXML_NamedNodeMap *nnMap)
Frees a NamedNodeMap.
void ixmlNamedNodeMap_init(IXML_NamedNodeMap *nnMap)
Initializes a NamedNodeMap object.
int ixmlNamedNodeMap_addToNamedNodeMap(IXML_NamedNodeMap **nnMap, IXML_Node *add)
Add a node to a NamedNodeMap.
static unsigned long ixmlNamedNodeMap_getItemNumber(IXML_NamedNodeMap *nnMap, const char *name)
Return the item number of a item in NamedNodeMap.