XMLAPI XML * xml_first(XML * xml)
{
if (xml == NULL) return NULL;
if (xml->children == NULL) return NULL;
return (xml->children->element);
}
XMLAPI XML * xml_firstelem(XML * xml)
{
ELEMENTLIST *list;
if (xml == NULL) return NULL;
list = xml->children;
while (list != NULL) {
if (list->element->name != NULL) break;
list = list->next;
}
if (list != NULL) return (list->element);
return NULL;
}
XMLAPI XML * xml_last(XML *xml)
{
if (xml == NULL) return NULL;
if (xml->lastchild == NULL) return NULL;
return (xml->lastchild->element);
}
XMLAPI XML * xml_lastelem(XML *xml)
{
ELEMENTLIST *list;
if (xml == NULL) return NULL;
list = xml->lastchild;
while (list != NULL) {
if (list->element->name != NULL) break;
list = list->prev;
}
if (list != NULL) return (list->element);
return NULL;
}
|