• Home
  • Raw
  • Download

Lines Matching refs:reader

88 #define DUMP_READER xmlTextReaderDebug(reader);
198 #define CONSTSTR(str) xmlDictLookup(reader->dict, (str), -1)
199 #define CONSTQSTR(p, str) xmlDictQLookup(reader->dict, (p), (str))
201 static int xmlTextReaderReadTree(xmlTextReaderPtr reader);
202 static int xmlTextReaderNextTree(xmlTextReaderPtr reader);
221 static void xmlTextReaderFreeNode(xmlTextReaderPtr reader, xmlNodePtr cur);
222 static void xmlTextReaderFreeNodeList(xmlTextReaderPtr reader, xmlNodePtr cur);
286 xmlTextReaderFreeProp(xmlTextReaderPtr reader, xmlAttrPtr cur) { in xmlTextReaderFreeProp() argument
289 if ((reader != NULL) && (reader->ctxt != NULL)) in xmlTextReaderFreeProp()
290 dict = reader->ctxt->dict; in xmlTextReaderFreeProp()
306 xmlTextReaderFreeNodeList(reader, cur->children); in xmlTextReaderFreeProp()
309 if ((reader != NULL) && (reader->ctxt != NULL) && in xmlTextReaderFreeProp()
310 (reader->ctxt->freeAttrsNr < 100)) { in xmlTextReaderFreeProp()
311 cur->next = reader->ctxt->freeAttrs; in xmlTextReaderFreeProp()
312 reader->ctxt->freeAttrs = cur; in xmlTextReaderFreeProp()
313 reader->ctxt->freeAttrsNr++; in xmlTextReaderFreeProp()
327 xmlTextReaderFreePropList(xmlTextReaderPtr reader, xmlAttrPtr cur) { in xmlTextReaderFreePropList() argument
332 xmlTextReaderFreeProp(reader, cur); in xmlTextReaderFreePropList()
346 xmlTextReaderFreeNodeList(xmlTextReaderPtr reader, xmlNodePtr cur) { in xmlTextReaderFreeNodeList() argument
350 if ((reader != NULL) && (reader->ctxt != NULL)) in xmlTextReaderFreeNodeList()
351 dict = reader->ctxt->dict; in xmlTextReaderFreeNodeList()
372 xmlTextReaderFreeNodeList(reader, cur->children); in xmlTextReaderFreeNodeList()
383 xmlTextReaderFreePropList(reader, cur->properties); in xmlTextReaderFreeNodeList()
405 (reader != NULL) && (reader->ctxt != NULL) && in xmlTextReaderFreeNodeList()
406 (reader->ctxt->freeElemsNr < 100)) { in xmlTextReaderFreeNodeList()
407 cur->next = reader->ctxt->freeElems; in xmlTextReaderFreeNodeList()
408 reader->ctxt->freeElems = cur; in xmlTextReaderFreeNodeList()
409 reader->ctxt->freeElemsNr++; in xmlTextReaderFreeNodeList()
427 xmlTextReaderFreeNode(xmlTextReaderPtr reader, xmlNodePtr cur) { in xmlTextReaderFreeNode() argument
430 if ((reader != NULL) && (reader->ctxt != NULL)) in xmlTextReaderFreeNode()
431 dict = reader->ctxt->dict; in xmlTextReaderFreeNode()
443 xmlTextReaderFreeProp(reader, (xmlAttrPtr) cur); in xmlTextReaderFreeNode()
450 xmlTextReaderFreeNodeList(reader, cur->children); in xmlTextReaderFreeNode()
461 xmlTextReaderFreePropList(reader, cur->properties); in xmlTextReaderFreeNode()
484 (reader != NULL) && (reader->ctxt != NULL) && in xmlTextReaderFreeNode()
485 (reader->ctxt->freeElemsNr < 100)) { in xmlTextReaderFreeNode()
486 cur->next = reader->ctxt->freeElems; in xmlTextReaderFreeNode()
487 reader->ctxt->freeElems = cur; in xmlTextReaderFreeNode()
488 reader->ctxt->freeElemsNr++; in xmlTextReaderFreeNode()
513 xmlTextReaderFreeDoc(xmlTextReaderPtr reader, xmlDocPtr cur) { in xmlTextReaderFreeDoc() argument
543 if (cur->children != NULL) xmlTextReaderFreeNodeList(reader, cur->children); in xmlTextReaderFreeDoc()
562 xmlTextReaderDebug(xmlTextReaderPtr reader) { in xmlTextReaderDebug() argument
563 if ((reader == NULL) || (reader->ctxt == NULL)) { in xmlTextReaderDebug()
568 reader->state, reader->depth); in xmlTextReaderDebug()
569 if (reader->node == NULL) { in xmlTextReaderDebug()
572 fprintf(stderr, "node %s\n", reader->node->name); in xmlTextReaderDebug()
575 reader->base, reader->cur, reader->ctxt->nodeNr); in xmlTextReaderDebug()
576 if (reader->input->buffer == NULL) { in xmlTextReaderDebug()
581 &reader->input->buffer->content[reader->cur]); in xmlTextReaderDebug()
598 xmlTextReaderEntPush(xmlTextReaderPtr reader, xmlNodePtr value) in xmlTextReaderEntPush() argument
600 if (reader->entMax <= 0) { in xmlTextReaderEntPush()
601 reader->entMax = 10; in xmlTextReaderEntPush()
602 reader->entTab = (xmlNodePtr *) xmlMalloc(reader->entMax * in xmlTextReaderEntPush()
603 sizeof(reader->entTab[0])); in xmlTextReaderEntPush()
604 if (reader->entTab == NULL) { in xmlTextReaderEntPush()
609 if (reader->entNr >= reader->entMax) { in xmlTextReaderEntPush()
610 reader->entMax *= 2; in xmlTextReaderEntPush()
611 reader->entTab = in xmlTextReaderEntPush()
612 (xmlNodePtr *) xmlRealloc(reader->entTab, in xmlTextReaderEntPush()
613 reader->entMax * in xmlTextReaderEntPush()
614 sizeof(reader->entTab[0])); in xmlTextReaderEntPush()
615 if (reader->entTab == NULL) { in xmlTextReaderEntPush()
620 reader->entTab[reader->entNr] = value; in xmlTextReaderEntPush()
621 reader->ent = value; in xmlTextReaderEntPush()
622 return (reader->entNr++); in xmlTextReaderEntPush()
634 xmlTextReaderEntPop(xmlTextReaderPtr reader) in xmlTextReaderEntPop() argument
638 if (reader->entNr <= 0) in xmlTextReaderEntPop()
640 reader->entNr--; in xmlTextReaderEntPop()
641 if (reader->entNr > 0) in xmlTextReaderEntPop()
642 reader->ent = reader->entTab[reader->entNr - 1]; in xmlTextReaderEntPop()
644 reader->ent = NULL; in xmlTextReaderEntPop()
645 ret = reader->entTab[reader->entNr]; in xmlTextReaderEntPop()
646 reader->entTab[reader->entNr] = NULL; in xmlTextReaderEntPop()
662 xmlTextReaderPtr reader = ctxt->_private; in xmlTextReaderStartElement() local
667 if ((reader != NULL) && (reader->startElement != NULL)) { in xmlTextReaderStartElement()
668 reader->startElement(ctx, fullname, atts); in xmlTextReaderStartElement()
674 if (reader != NULL) in xmlTextReaderStartElement()
675 reader->state = XML_TEXTREADER_ELEMENT; in xmlTextReaderStartElement()
688 xmlTextReaderPtr reader = ctxt->_private; in xmlTextReaderEndElement() local
693 if ((reader != NULL) && (reader->endElement != NULL)) { in xmlTextReaderEndElement()
694 reader->endElement(ctx, fullname); in xmlTextReaderEndElement()
725 xmlTextReaderPtr reader = ctxt->_private; in xmlTextReaderStartElementNs() local
730 if ((reader != NULL) && (reader->startElementNs != NULL)) { in xmlTextReaderStartElementNs()
731 reader->startElementNs(ctx, localname, prefix, URI, nb_namespaces, in xmlTextReaderStartElementNs()
739 if (reader != NULL) in xmlTextReaderStartElementNs()
740 reader->state = XML_TEXTREADER_ELEMENT; in xmlTextReaderStartElementNs()
759 xmlTextReaderPtr reader = ctxt->_private; in xmlTextReaderEndElementNs() local
764 if ((reader != NULL) && (reader->endElementNs != NULL)) { in xmlTextReaderEndElementNs()
765 reader->endElementNs(ctx, localname, prefix, URI); in xmlTextReaderEndElementNs()
782 xmlTextReaderPtr reader = ctxt->_private; in xmlTextReaderCharacters() local
787 if ((reader != NULL) && (reader->characters != NULL)) { in xmlTextReaderCharacters()
788 reader->characters(ctx, ch, len); in xmlTextReaderCharacters()
804 xmlTextReaderPtr reader = ctxt->_private; in xmlTextReaderCDataBlock() local
809 if ((reader != NULL) && (reader->cdataBlock != NULL)) { in xmlTextReaderCDataBlock()
810 reader->cdataBlock(ctx, ch, len); in xmlTextReaderCDataBlock()
824 xmlTextReaderPushData(xmlTextReaderPtr reader) { in xmlTextReaderPushData() argument
830 if ((reader->input == NULL) || (reader->input->buffer == NULL)) in xmlTextReaderPushData()
833 oldstate = reader->state; in xmlTextReaderPushData()
834 reader->state = XML_TEXTREADER_NONE; in xmlTextReaderPushData()
835 inbuf = reader->input->buffer; in xmlTextReaderPushData()
838 while (reader->state == XML_TEXTREADER_NONE) { in xmlTextReaderPushData()
839 if (xmlBufUse(inbuf) < reader->cur + CHUNK_SIZE) { in xmlTextReaderPushData()
843 if (reader->mode != XML_TEXTREADER_MODE_EOF) { in xmlTextReaderPushData()
844 val = xmlParserInputBufferRead(reader->input, 4096); in xmlTextReaderPushData()
847 if (xmlBufUse(inbuf) == reader->cur) { in xmlTextReaderPushData()
848 reader->mode = XML_TEXTREADER_MODE_EOF; in xmlTextReaderPushData()
849 reader->state = oldstate; in xmlTextReaderPushData()
852 reader->mode = XML_TEXTREADER_MODE_EOF; in xmlTextReaderPushData()
853 reader->state = oldstate; in xmlTextReaderPushData()
855 (reader->ctxt->myDoc != NULL)) in xmlTextReaderPushData()
859 reader->mode = XML_TEXTREADER_MODE_EOF; in xmlTextReaderPushData()
870 if (xmlBufUse(inbuf) >= reader->cur + CHUNK_SIZE) { in xmlTextReaderPushData()
871 val = xmlParseChunk(reader->ctxt, in xmlTextReaderPushData()
872 (const char *) xmlBufContent(inbuf) + reader->cur, in xmlTextReaderPushData()
874 reader->cur += CHUNK_SIZE; in xmlTextReaderPushData()
876 reader->ctxt->wellFormed = 0; in xmlTextReaderPushData()
877 if (reader->ctxt->wellFormed == 0) in xmlTextReaderPushData()
880 s = xmlBufUse(inbuf) - reader->cur; in xmlTextReaderPushData()
881 val = xmlParseChunk(reader->ctxt, in xmlTextReaderPushData()
882 (const char *) xmlBufContent(inbuf) + reader->cur, in xmlTextReaderPushData()
884 reader->cur += s; in xmlTextReaderPushData()
886 reader->ctxt->wellFormed = 0; in xmlTextReaderPushData()
894 if (reader->mode == XML_TEXTREADER_MODE_INTERACTIVE) { in xmlTextReaderPushData()
896 if ((reader->cur >= 4096) && in xmlTextReaderPushData()
897 (xmlBufUse(inbuf) - reader->cur <= CHUNK_SIZE)) { in xmlTextReaderPushData()
898 val = xmlBufShrink(inbuf, reader->cur); in xmlTextReaderPushData()
900 reader->cur -= val; in xmlTextReaderPushData()
910 else if (reader->mode == XML_TEXTREADER_MODE_EOF) { in xmlTextReaderPushData()
911 if (reader->state != XML_TEXTREADER_DONE) { in xmlTextReaderPushData()
912 s = xmlBufUse(inbuf) - reader->cur; in xmlTextReaderPushData()
913 val = xmlParseChunk(reader->ctxt, in xmlTextReaderPushData()
914 (const char *) xmlBufContent(inbuf) + reader->cur, in xmlTextReaderPushData()
916 reader->cur = xmlBufUse(inbuf); in xmlTextReaderPushData()
917 reader->state = XML_TEXTREADER_DONE; in xmlTextReaderPushData()
919 if (reader->ctxt->wellFormed) in xmlTextReaderPushData()
920 reader->ctxt->wellFormed = 0; in xmlTextReaderPushData()
926 reader->state = oldstate; in xmlTextReaderPushData()
927 if (reader->ctxt->wellFormed == 0) { in xmlTextReaderPushData()
928 reader->mode = XML_TEXTREADER_MODE_EOF; in xmlTextReaderPushData()
943 xmlTextReaderValidatePush(xmlTextReaderPtr reader ATTRIBUTE_UNUSED) { in xmlTextReaderValidatePush()
944 xmlNodePtr node = reader->node; in xmlTextReaderValidatePush()
947 if ((reader->validate == XML_TEXTREADER_VALIDATE_DTD) && in xmlTextReaderValidatePush()
948 (reader->ctxt != NULL) && (reader->ctxt->validate == 1)) { in xmlTextReaderValidatePush()
950 reader->ctxt->valid &= xmlValidatePushElement(&reader->ctxt->vctxt, in xmlTextReaderValidatePush()
951 reader->ctxt->myDoc, node, node->name); in xmlTextReaderValidatePush()
959 reader->ctxt->valid &= xmlValidatePushElement(&reader->ctxt->vctxt, in xmlTextReaderValidatePush()
960 reader->ctxt->myDoc, node, qname); in xmlTextReaderValidatePush()
967 if ((reader->validate == XML_TEXTREADER_VALIDATE_RNG) && in xmlTextReaderValidatePush()
968 (reader->rngValidCtxt != NULL)) { in xmlTextReaderValidatePush()
971 if (reader->rngFullNode != NULL) return; in xmlTextReaderValidatePush()
972 ret = xmlRelaxNGValidatePushElement(reader->rngValidCtxt, in xmlTextReaderValidatePush()
973 reader->ctxt->myDoc, in xmlTextReaderValidatePush()
979 node = xmlTextReaderExpand(reader); in xmlTextReaderValidatePush()
984 ret = xmlRelaxNGValidateFullElement(reader->rngValidCtxt, in xmlTextReaderValidatePush()
985 reader->ctxt->myDoc, in xmlTextReaderValidatePush()
987 reader->rngFullNode = node; in xmlTextReaderValidatePush()
991 reader->rngValidErrors++; in xmlTextReaderValidatePush()
1005 xmlTextReaderValidateCData(xmlTextReaderPtr reader, in xmlTextReaderValidateCData() argument
1008 if ((reader->validate == XML_TEXTREADER_VALIDATE_DTD) && in xmlTextReaderValidateCData()
1009 (reader->ctxt != NULL) && (reader->ctxt->validate == 1)) { in xmlTextReaderValidateCData()
1010 reader->ctxt->valid &= xmlValidatePushCData(&reader->ctxt->vctxt, in xmlTextReaderValidateCData()
1015 if ((reader->validate == XML_TEXTREADER_VALIDATE_RNG) && in xmlTextReaderValidateCData()
1016 (reader->rngValidCtxt != NULL)) { in xmlTextReaderValidateCData()
1019 if (reader->rngFullNode != NULL) return; in xmlTextReaderValidateCData()
1020 ret = xmlRelaxNGValidatePushCData(reader->rngValidCtxt, data, len); in xmlTextReaderValidateCData()
1022 reader->rngValidErrors++; in xmlTextReaderValidateCData()
1034 xmlTextReaderValidatePop(xmlTextReaderPtr reader) { in xmlTextReaderValidatePop() argument
1035 xmlNodePtr node = reader->node; in xmlTextReaderValidatePop()
1038 if ((reader->validate == XML_TEXTREADER_VALIDATE_DTD) && in xmlTextReaderValidatePop()
1039 (reader->ctxt != NULL) && (reader->ctxt->validate == 1)) { in xmlTextReaderValidatePop()
1041 reader->ctxt->valid &= xmlValidatePopElement(&reader->ctxt->vctxt, in xmlTextReaderValidatePop()
1042 reader->ctxt->myDoc, node, node->name); in xmlTextReaderValidatePop()
1050 reader->ctxt->valid &= xmlValidatePopElement(&reader->ctxt->vctxt, in xmlTextReaderValidatePop()
1051 reader->ctxt->myDoc, node, qname); in xmlTextReaderValidatePop()
1058 if ((reader->validate == XML_TEXTREADER_VALIDATE_RNG) && in xmlTextReaderValidatePop()
1059 (reader->rngValidCtxt != NULL)) { in xmlTextReaderValidatePop()
1062 if (reader->rngFullNode != NULL) { in xmlTextReaderValidatePop()
1063 if (node == reader->rngFullNode) in xmlTextReaderValidatePop()
1064 reader->rngFullNode = NULL; in xmlTextReaderValidatePop()
1067 ret = xmlRelaxNGValidatePopElement(reader->rngValidCtxt, in xmlTextReaderValidatePop()
1068 reader->ctxt->myDoc, in xmlTextReaderValidatePop()
1071 reader->rngValidErrors++; in xmlTextReaderValidatePop()
1085 xmlTextReaderValidateEntity(xmlTextReaderPtr reader) { in xmlTextReaderValidateEntity() argument
1086 xmlNodePtr oldnode = reader->node; in xmlTextReaderValidateEntity()
1087 xmlNodePtr node = reader->node; in xmlTextReaderValidateEntity()
1088 xmlParserCtxtPtr ctxt = reader->ctxt; in xmlTextReaderValidateEntity()
1105 xmlTextReaderEntPush(reader, node); in xmlTextReaderValidateEntity()
1118 reader->node = node; in xmlTextReaderValidateEntity()
1119 xmlTextReaderValidatePush(reader); in xmlTextReaderValidateEntity()
1122 xmlTextReaderValidateCData(reader, node->content, in xmlTextReaderValidateEntity()
1134 xmlTextReaderValidatePop(reader); in xmlTextReaderValidateEntity()
1144 if (reader->entNr == 0) { in xmlTextReaderValidateEntity()
1148 xmlTextReaderFreeNode(reader, tmp); in xmlTextReaderValidateEntity()
1153 reader->node = node; in xmlTextReaderValidateEntity()
1154 xmlTextReaderValidatePop(reader); in xmlTextReaderValidateEntity()
1157 (reader->ent != NULL) && (reader->ent->children == node)) { in xmlTextReaderValidateEntity()
1158 node = xmlTextReaderEntPop(reader); in xmlTextReaderValidateEntity()
1168 reader->node = oldnode; in xmlTextReaderValidateEntity()
1205 xmlTextReaderDoExpand(xmlTextReaderPtr reader) { in xmlTextReaderDoExpand() argument
1208 if ((reader == NULL) || (reader->node == NULL) || (reader->ctxt == NULL)) in xmlTextReaderDoExpand()
1211 if (reader->ctxt->instate == XML_PARSER_EOF) return(1); in xmlTextReaderDoExpand()
1213 if (xmlTextReaderGetSuccessor(reader->node) != NULL) in xmlTextReaderDoExpand()
1215 if (reader->ctxt->nodeNr < reader->depth) in xmlTextReaderDoExpand()
1217 if (reader->mode == XML_TEXTREADER_MODE_EOF) in xmlTextReaderDoExpand()
1219 val = xmlTextReaderPushData(reader); in xmlTextReaderDoExpand()
1221 reader->mode = XML_TEXTREADER_MODE_ERROR; in xmlTextReaderDoExpand()
1224 } while(reader->mode != XML_TEXTREADER_MODE_EOF); in xmlTextReaderDoExpand()
1286 xmlTextReaderRead(xmlTextReaderPtr reader) { in xmlTextReaderRead() argument
1292 if (reader == NULL) in xmlTextReaderRead()
1294 reader->curnode = NULL; in xmlTextReaderRead()
1295 if (reader->doc != NULL) in xmlTextReaderRead()
1296 return(xmlTextReaderReadTree(reader)); in xmlTextReaderRead()
1297 if (reader->ctxt == NULL) in xmlTextReaderRead()
1304 if (reader->mode == XML_TEXTREADER_MODE_INITIAL) { in xmlTextReaderRead()
1305 reader->mode = XML_TEXTREADER_MODE_INTERACTIVE; in xmlTextReaderRead()
1310 val = xmlTextReaderPushData(reader); in xmlTextReaderRead()
1312 reader->mode = XML_TEXTREADER_MODE_ERROR; in xmlTextReaderRead()
1313 reader->state = XML_TEXTREADER_ERROR; in xmlTextReaderRead()
1316 } while ((reader->ctxt->node == NULL) && in xmlTextReaderRead()
1317 ((reader->mode != XML_TEXTREADER_MODE_EOF) && in xmlTextReaderRead()
1318 (reader->state != XML_TEXTREADER_DONE))); in xmlTextReaderRead()
1319 if (reader->ctxt->node == NULL) { in xmlTextReaderRead()
1320 if (reader->ctxt->myDoc != NULL) { in xmlTextReaderRead()
1321 reader->node = reader->ctxt->myDoc->children; in xmlTextReaderRead()
1323 if (reader->node == NULL){ in xmlTextReaderRead()
1324 reader->mode = XML_TEXTREADER_MODE_ERROR; in xmlTextReaderRead()
1325 reader->state = XML_TEXTREADER_ERROR; in xmlTextReaderRead()
1328 reader->state = XML_TEXTREADER_ELEMENT; in xmlTextReaderRead()
1330 if (reader->ctxt->myDoc != NULL) { in xmlTextReaderRead()
1331 reader->node = reader->ctxt->myDoc->children; in xmlTextReaderRead()
1333 if (reader->node == NULL) in xmlTextReaderRead()
1334 reader->node = reader->ctxt->nodeTab[0]; in xmlTextReaderRead()
1335 reader->state = XML_TEXTREADER_ELEMENT; in xmlTextReaderRead()
1337 reader->depth = 0; in xmlTextReaderRead()
1338 reader->ctxt->parseMode = XML_PARSE_READER; in xmlTextReaderRead()
1341 oldstate = reader->state; in xmlTextReaderRead()
1342 olddepth = reader->ctxt->nodeNr; in xmlTextReaderRead()
1343 oldnode = reader->node; in xmlTextReaderRead()
1346 if (reader->node == NULL) { in xmlTextReaderRead()
1347 if (reader->mode == XML_TEXTREADER_MODE_EOF) in xmlTextReaderRead()
1358 while ((reader->node != NULL) && (reader->node->next == NULL) && in xmlTextReaderRead()
1359 (reader->ctxt->nodeNr == olddepth) && in xmlTextReaderRead()
1361 (reader->node->children == NULL) || in xmlTextReaderRead()
1362 (reader->node->type == XML_ENTITY_REF_NODE) || in xmlTextReaderRead()
1363 ((reader->node->children != NULL) && in xmlTextReaderRead()
1364 (reader->node->children->type == XML_TEXT_NODE) && in xmlTextReaderRead()
1365 (reader->node->children->next == NULL)) || in xmlTextReaderRead()
1366 (reader->node->type == XML_DTD_NODE) || in xmlTextReaderRead()
1367 (reader->node->type == XML_DOCUMENT_NODE) || in xmlTextReaderRead()
1368 (reader->node->type == XML_HTML_DOCUMENT_NODE)) && in xmlTextReaderRead()
1369 ((reader->ctxt->node == NULL) || in xmlTextReaderRead()
1370 (reader->ctxt->node == reader->node) || in xmlTextReaderRead()
1371 (reader->ctxt->node == reader->node->parent)) && in xmlTextReaderRead()
1372 (reader->ctxt->instate != XML_PARSER_EOF)) { in xmlTextReaderRead()
1373 val = xmlTextReaderPushData(reader); in xmlTextReaderRead()
1375 reader->mode = XML_TEXTREADER_MODE_ERROR; in xmlTextReaderRead()
1376 reader->state = XML_TEXTREADER_ERROR; in xmlTextReaderRead()
1379 if (reader->node == NULL) in xmlTextReaderRead()
1383 if ((reader->node->children != NULL) && in xmlTextReaderRead()
1384 (reader->node->type != XML_ENTITY_REF_NODE) && in xmlTextReaderRead()
1385 (reader->node->type != XML_XINCLUDE_START) && in xmlTextReaderRead()
1386 (reader->node->type != XML_DTD_NODE)) { in xmlTextReaderRead()
1387 reader->node = reader->node->children; in xmlTextReaderRead()
1388 reader->depth++; in xmlTextReaderRead()
1389 reader->state = XML_TEXTREADER_ELEMENT; in xmlTextReaderRead()
1393 if (reader->node->next != NULL) { in xmlTextReaderRead()
1395 (reader->node->type == XML_ELEMENT_NODE) && in xmlTextReaderRead()
1396 (reader->node->children == NULL) && in xmlTextReaderRead()
1397 ((reader->node->extra & NODE_IS_EMPTY) == 0) in xmlTextReaderRead()
1399 && (reader->in_xinclude <= 0) in xmlTextReaderRead()
1402 reader->state = XML_TEXTREADER_END; in xmlTextReaderRead()
1406 if ((reader->validate) && in xmlTextReaderRead()
1407 (reader->node->type == XML_ELEMENT_NODE)) in xmlTextReaderRead()
1408 xmlTextReaderValidatePop(reader); in xmlTextReaderRead()
1410 if ((reader->preserves > 0) && in xmlTextReaderRead()
1411 (reader->node->extra & NODE_IS_SPRESERVED)) in xmlTextReaderRead()
1412 reader->preserves--; in xmlTextReaderRead()
1413 reader->node = reader->node->next; in xmlTextReaderRead()
1414 reader->state = XML_TEXTREADER_ELEMENT; in xmlTextReaderRead()
1419 if ((reader->preserves == 0) && in xmlTextReaderRead()
1421 (reader->in_xinclude == 0) && in xmlTextReaderRead()
1423 (reader->entNr == 0) && in xmlTextReaderRead()
1424 (reader->node->prev != NULL) && in xmlTextReaderRead()
1425 (reader->node->prev->type != XML_DTD_NODE)) { in xmlTextReaderRead()
1426 xmlNodePtr tmp = reader->node->prev; in xmlTextReaderRead()
1429 xmlTextReaderFreeNode(reader, tmp); in xmlTextReaderRead()
1436 (reader->node->type == XML_ELEMENT_NODE) && in xmlTextReaderRead()
1437 (reader->node->children == NULL) && in xmlTextReaderRead()
1438 ((reader->node->extra & NODE_IS_EMPTY) == 0)) {; in xmlTextReaderRead()
1439 reader->state = XML_TEXTREADER_END; in xmlTextReaderRead()
1443 … if ((reader->validate != XML_TEXTREADER_NOT_VALIDATE) && (reader->node->type == XML_ELEMENT_NODE)) in xmlTextReaderRead()
1444 xmlTextReaderValidatePop(reader); in xmlTextReaderRead()
1446 if ((reader->preserves > 0) && in xmlTextReaderRead()
1447 (reader->node->extra & NODE_IS_SPRESERVED)) in xmlTextReaderRead()
1448 reader->preserves--; in xmlTextReaderRead()
1449 reader->node = reader->node->parent; in xmlTextReaderRead()
1450 if ((reader->node == NULL) || in xmlTextReaderRead()
1451 (reader->node->type == XML_DOCUMENT_NODE) || in xmlTextReaderRead()
1453 (reader->node->type == XML_DOCB_DOCUMENT_NODE) || in xmlTextReaderRead()
1455 (reader->node->type == XML_HTML_DOCUMENT_NODE)) { in xmlTextReaderRead()
1456 if (reader->mode != XML_TEXTREADER_MODE_EOF) { in xmlTextReaderRead()
1457 val = xmlParseChunk(reader->ctxt, "", 0, 1); in xmlTextReaderRead()
1458 reader->state = XML_TEXTREADER_DONE; in xmlTextReaderRead()
1462 reader->node = NULL; in xmlTextReaderRead()
1463 reader->depth = -1; in xmlTextReaderRead()
1468 if ((oldnode != NULL) && (reader->preserves == 0) && in xmlTextReaderRead()
1470 (reader->in_xinclude == 0) && in xmlTextReaderRead()
1472 (reader->entNr == 0) && in xmlTextReaderRead()
1476 xmlTextReaderFreeNode(reader, oldnode); in xmlTextReaderRead()
1481 if ((reader->preserves == 0) && in xmlTextReaderRead()
1483 (reader->in_xinclude == 0) && in xmlTextReaderRead()
1485 (reader->entNr == 0) && in xmlTextReaderRead()
1486 (reader->node->last != NULL) && in xmlTextReaderRead()
1487 ((reader->node->last->extra & NODE_IS_PRESERVED) == 0)) { in xmlTextReaderRead()
1488 xmlNodePtr tmp = reader->node->last; in xmlTextReaderRead()
1490 xmlTextReaderFreeNode(reader, tmp); in xmlTextReaderRead()
1492 reader->depth--; in xmlTextReaderRead()
1493 reader->state = XML_TEXTREADER_BACKTRACK; in xmlTextReaderRead()
1501 if ((reader->node != NULL) && in xmlTextReaderRead()
1502 (reader->node->next == NULL) && in xmlTextReaderRead()
1503 ((reader->node->type == XML_TEXT_NODE) || in xmlTextReaderRead()
1504 (reader->node->type == XML_CDATA_SECTION_NODE))) { in xmlTextReaderRead()
1505 if (xmlTextReaderExpand(reader) == NULL) in xmlTextReaderRead()
1513 if ((reader->xinclude) && (reader->node != NULL) && in xmlTextReaderRead()
1514 (reader->node->type == XML_ELEMENT_NODE) && in xmlTextReaderRead()
1515 (reader->node->ns != NULL) && in xmlTextReaderRead()
1516 ((xmlStrEqual(reader->node->ns->href, XINCLUDE_NS)) || in xmlTextReaderRead()
1517 (xmlStrEqual(reader->node->ns->href, XINCLUDE_OLD_NS)))) { in xmlTextReaderRead()
1518 if (reader->xincctxt == NULL) { in xmlTextReaderRead()
1519 reader->xincctxt = xmlXIncludeNewContext(reader->ctxt->myDoc); in xmlTextReaderRead()
1520 xmlXIncludeSetFlags(reader->xincctxt, in xmlTextReaderRead()
1521 reader->parserFlags & (~XML_PARSE_NOXINCNODE)); in xmlTextReaderRead()
1526 if (xmlTextReaderExpand(reader) == NULL) in xmlTextReaderRead()
1528 xmlXIncludeProcessNode(reader->xincctxt, reader->node); in xmlTextReaderRead()
1530 if ((reader->node != NULL) && (reader->node->type == XML_XINCLUDE_START)) { in xmlTextReaderRead()
1531 reader->in_xinclude++; in xmlTextReaderRead()
1534 if ((reader->node != NULL) && (reader->node->type == XML_XINCLUDE_END)) { in xmlTextReaderRead()
1535 reader->in_xinclude--; in xmlTextReaderRead()
1542 if ((reader->node != NULL) && in xmlTextReaderRead()
1543 (reader->node->type == XML_ENTITY_REF_NODE) && in xmlTextReaderRead()
1544 (reader->ctxt != NULL) && (reader->ctxt->replaceEntities == 1)) { in xmlTextReaderRead()
1549 if ((reader->node->children == NULL) && (reader->ctxt->sax != NULL) && in xmlTextReaderRead()
1550 (reader->ctxt->sax->getEntity != NULL)) { in xmlTextReaderRead()
1551 reader->node->children = (xmlNodePtr) in xmlTextReaderRead()
1552 reader->ctxt->sax->getEntity(reader->ctxt, reader->node->name); in xmlTextReaderRead()
1555 if ((reader->node->children != NULL) && in xmlTextReaderRead()
1556 (reader->node->children->type == XML_ENTITY_DECL) && in xmlTextReaderRead()
1557 (reader->node->children->children != NULL)) { in xmlTextReaderRead()
1558 xmlTextReaderEntPush(reader, reader->node); in xmlTextReaderRead()
1559 reader->node = reader->node->children->children; in xmlTextReaderRead()
1562 } else if ((reader->node != NULL) && in xmlTextReaderRead()
1563 (reader->node->type == XML_ENTITY_REF_NODE) && in xmlTextReaderRead()
1564 (reader->ctxt != NULL) && (reader->validate)) { in xmlTextReaderRead()
1565 xmlTextReaderValidateEntity(reader); in xmlTextReaderRead()
1568 if ((reader->node != NULL) && in xmlTextReaderRead()
1569 (reader->node->type == XML_ENTITY_DECL) && in xmlTextReaderRead()
1570 (reader->ent != NULL) && (reader->ent->children == reader->node)) { in xmlTextReaderRead()
1571 reader->node = xmlTextReaderEntPop(reader); in xmlTextReaderRead()
1572 reader->depth++; in xmlTextReaderRead()
1576 if ((reader->validate != XML_TEXTREADER_NOT_VALIDATE) && (reader->node != NULL)) { in xmlTextReaderRead()
1577 xmlNodePtr node = reader->node; in xmlTextReaderRead()
1580 ((reader->state != XML_TEXTREADER_END) && in xmlTextReaderRead()
1581 (reader->state != XML_TEXTREADER_BACKTRACK))) { in xmlTextReaderRead()
1582 xmlTextReaderValidatePush(reader); in xmlTextReaderRead()
1585 xmlTextReaderValidateCData(reader, node->content, in xmlTextReaderRead()
1591 if ((reader->patternNr > 0) && (reader->state != XML_TEXTREADER_END) && in xmlTextReaderRead()
1592 (reader->state != XML_TEXTREADER_BACKTRACK)) { in xmlTextReaderRead()
1594 for (i = 0;i < reader->patternNr;i++) { in xmlTextReaderRead()
1595 if (xmlPatternMatch(reader->patternTab[i], reader->node) == 1) { in xmlTextReaderRead()
1596 xmlTextReaderPreserve(reader); in xmlTextReaderRead()
1603 if ((reader->validate == XML_TEXTREADER_VALIDATE_XSD) && in xmlTextReaderRead()
1604 (reader->xsdValidErrors == 0) && in xmlTextReaderRead()
1605 (reader->xsdValidCtxt != NULL)) { in xmlTextReaderRead()
1606 reader->xsdValidErrors = !xmlSchemaIsValid(reader->xsdValidCtxt); in xmlTextReaderRead()
1611 reader->state = XML_TEXTREADER_DONE; in xmlTextReaderRead()
1624 xmlTextReaderReadState(xmlTextReaderPtr reader) { in xmlTextReaderReadState() argument
1625 if (reader == NULL) in xmlTextReaderReadState()
1627 return(reader->mode); in xmlTextReaderReadState()
1641 xmlTextReaderExpand(xmlTextReaderPtr reader) { in xmlTextReaderExpand() argument
1642 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderExpand()
1644 if (reader->doc != NULL) in xmlTextReaderExpand()
1645 return(reader->node); in xmlTextReaderExpand()
1646 if (reader->ctxt == NULL) in xmlTextReaderExpand()
1648 if (xmlTextReaderDoExpand(reader) < 0) in xmlTextReaderExpand()
1650 return(reader->node); in xmlTextReaderExpand()
1664 xmlTextReaderNext(xmlTextReaderPtr reader) { in xmlTextReaderNext() argument
1668 if (reader == NULL) in xmlTextReaderNext()
1670 if (reader->doc != NULL) in xmlTextReaderNext()
1671 return(xmlTextReaderNextTree(reader)); in xmlTextReaderNext()
1672 cur = reader->node; in xmlTextReaderNext()
1674 return(xmlTextReaderRead(reader)); in xmlTextReaderNext()
1675 if (reader->state == XML_TEXTREADER_END || reader->state == XML_TEXTREADER_BACKTRACK) in xmlTextReaderNext()
1676 return(xmlTextReaderRead(reader)); in xmlTextReaderNext()
1678 return(xmlTextReaderRead(reader)); in xmlTextReaderNext()
1680 ret = xmlTextReaderRead(reader); in xmlTextReaderNext()
1683 } while (reader->node != cur); in xmlTextReaderNext()
1684 return(xmlTextReaderRead(reader)); in xmlTextReaderNext()
1699 xmlTextReaderReadInnerXml(xmlTextReaderPtr reader ATTRIBUTE_UNUSED) in xmlTextReaderReadInnerXml()
1706 if (xmlTextReaderExpand(reader) == NULL) { in xmlTextReaderReadInnerXml()
1709 doc = reader->doc; in xmlTextReaderReadInnerXml()
1711 for (cur_node = reader->node->children; cur_node != NULL; in xmlTextReaderReadInnerXml()
1745 xmlTextReaderReadOuterXml(xmlTextReaderPtr reader ATTRIBUTE_UNUSED) in xmlTextReaderReadOuterXml()
1752 node = reader->node; in xmlTextReaderReadOuterXml()
1753 doc = reader->doc; in xmlTextReaderReadOuterXml()
1754 if (xmlTextReaderExpand(reader) == NULL) { in xmlTextReaderReadOuterXml()
1789 xmlTextReaderReadString(xmlTextReaderPtr reader) in xmlTextReaderReadString() argument
1793 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderReadString()
1796 node = (reader->curnode != NULL) ? reader->curnode : reader->node; in xmlTextReaderReadString()
1803 if (xmlTextReaderDoExpand(reader) != -1) { in xmlTextReaderReadString()
1832 xmlTextReaderReadBase64(xmlTextReaderPtr reader,
1836 if ((reader == NULL) || (reader->ctxt == NULL))
1838 if (reader->ctxt->wellFormed != 1)
1841 if ((reader->node == NULL) || (reader->node->type == XML_ELEMENT_NODE))
1862 xmlTextReaderReadBinHex(xmlTextReaderPtr reader,
1866 if ((reader == NULL) || (reader->ctxt == NULL))
1868 if (reader->ctxt->wellFormed != 1)
1871 if ((reader->node == NULL) || (reader->node->type == XML_ELEMENT_NODE))
1884 xmlTextReaderNextTree(xmlTextReaderPtr reader) in xmlTextReaderNextTree() argument
1886 if (reader == NULL) in xmlTextReaderNextTree()
1889 if (reader->state == XML_TEXTREADER_END) in xmlTextReaderNextTree()
1892 if (reader->node == NULL) { in xmlTextReaderNextTree()
1893 if (reader->doc->children == NULL) { in xmlTextReaderNextTree()
1894 reader->state = XML_TEXTREADER_END; in xmlTextReaderNextTree()
1898 reader->node = reader->doc->children; in xmlTextReaderNextTree()
1899 reader->state = XML_TEXTREADER_START; in xmlTextReaderNextTree()
1903 if (reader->state != XML_TEXTREADER_BACKTRACK) { in xmlTextReaderNextTree()
1906 if (reader->node->next != 0) { in xmlTextReaderNextTree()
1908 reader->node = reader->node->next; in xmlTextReaderNextTree()
1909 reader->state = XML_TEXTREADER_START; in xmlTextReaderNextTree()
1915 if ((reader->node->type == XML_ELEMENT_NODE) || in xmlTextReaderNextTree()
1916 (reader->node->type == XML_ATTRIBUTE_NODE)) { in xmlTextReaderNextTree()
1917 reader->state = XML_TEXTREADER_BACKTRACK; in xmlTextReaderNextTree()
1919 xmlTextReaderRead(reader); in xmlTextReaderNextTree()
1923 if (reader->node->next != 0) { in xmlTextReaderNextTree()
1924 reader->node = reader->node->next; in xmlTextReaderNextTree()
1925 reader->state = XML_TEXTREADER_START; in xmlTextReaderNextTree()
1929 if (reader->node->parent != 0) { in xmlTextReaderNextTree()
1930 if (reader->node->parent->type == XML_DOCUMENT_NODE) { in xmlTextReaderNextTree()
1931 reader->state = XML_TEXTREADER_END; in xmlTextReaderNextTree()
1935 reader->node = reader->node->parent; in xmlTextReaderNextTree()
1936 reader->depth--; in xmlTextReaderNextTree()
1937 reader->state = XML_TEXTREADER_BACKTRACK; in xmlTextReaderNextTree()
1939 xmlTextReaderNextTree(reader); in xmlTextReaderNextTree()
1942 reader->state = XML_TEXTREADER_END; in xmlTextReaderNextTree()
1958 xmlTextReaderReadTree(xmlTextReaderPtr reader) { in xmlTextReaderReadTree() argument
1959 if (reader->state == XML_TEXTREADER_END) in xmlTextReaderReadTree()
1963 if (reader->node == NULL) { in xmlTextReaderReadTree()
1964 if (reader->doc->children == NULL) { in xmlTextReaderReadTree()
1965 reader->state = XML_TEXTREADER_END; in xmlTextReaderReadTree()
1969 reader->node = reader->doc->children; in xmlTextReaderReadTree()
1970 reader->state = XML_TEXTREADER_START; in xmlTextReaderReadTree()
1974 if ((reader->state != XML_TEXTREADER_BACKTRACK) && in xmlTextReaderReadTree()
1975 (reader->node->type != XML_DTD_NODE) && in xmlTextReaderReadTree()
1976 (reader->node->type != XML_XINCLUDE_START) && in xmlTextReaderReadTree()
1977 (reader->node->type != XML_ENTITY_REF_NODE)) { in xmlTextReaderReadTree()
1978 if (reader->node->children != NULL) { in xmlTextReaderReadTree()
1979 reader->node = reader->node->children; in xmlTextReaderReadTree()
1980 reader->depth++; in xmlTextReaderReadTree()
1981 reader->state = XML_TEXTREADER_START; in xmlTextReaderReadTree()
1985 if (reader->node->type == XML_ATTRIBUTE_NODE) { in xmlTextReaderReadTree()
1986 reader->state = XML_TEXTREADER_BACKTRACK; in xmlTextReaderReadTree()
1991 if (reader->node->next != NULL) { in xmlTextReaderReadTree()
1992 reader->node = reader->node->next; in xmlTextReaderReadTree()
1993 reader->state = XML_TEXTREADER_START; in xmlTextReaderReadTree()
1997 if (reader->node->parent != NULL) { in xmlTextReaderReadTree()
1998 if ((reader->node->parent->type == XML_DOCUMENT_NODE) || in xmlTextReaderReadTree()
1999 (reader->node->parent->type == XML_HTML_DOCUMENT_NODE)) { in xmlTextReaderReadTree()
2000 reader->state = XML_TEXTREADER_END; in xmlTextReaderReadTree()
2004 reader->node = reader->node->parent; in xmlTextReaderReadTree()
2005 reader->depth--; in xmlTextReaderReadTree()
2006 reader->state = XML_TEXTREADER_BACKTRACK; in xmlTextReaderReadTree()
2010 reader->state = XML_TEXTREADER_END; in xmlTextReaderReadTree()
2013 if ((reader->node->type == XML_XINCLUDE_START) || in xmlTextReaderReadTree()
2014 (reader->node->type == XML_XINCLUDE_END)) in xmlTextReaderReadTree()
2032 xmlTextReaderNextSibling(xmlTextReaderPtr reader) { in xmlTextReaderNextSibling() argument
2033 if (reader == NULL) in xmlTextReaderNextSibling()
2035 if (reader->doc == NULL) { in xmlTextReaderNextSibling()
2040 if (reader->state == XML_TEXTREADER_END) in xmlTextReaderNextSibling()
2043 if (reader->node == NULL) in xmlTextReaderNextSibling()
2044 return(xmlTextReaderNextTree(reader)); in xmlTextReaderNextSibling()
2046 if (reader->node->next != NULL) { in xmlTextReaderNextSibling()
2047 reader->node = reader->node->next; in xmlTextReaderNextSibling()
2048 reader->state = XML_TEXTREADER_START; in xmlTextReaderNextSibling()
2214 xmlFreeTextReader(xmlTextReaderPtr reader) { in xmlFreeTextReader() argument
2215 if (reader == NULL) in xmlFreeTextReader()
2218 if (reader->rngSchemas != NULL) { in xmlFreeTextReader()
2219 xmlRelaxNGFree(reader->rngSchemas); in xmlFreeTextReader()
2220 reader->rngSchemas = NULL; in xmlFreeTextReader()
2222 if (reader->rngValidCtxt != NULL) { in xmlFreeTextReader()
2223 if (! reader->rngPreserveCtxt) in xmlFreeTextReader()
2224 xmlRelaxNGFreeValidCtxt(reader->rngValidCtxt); in xmlFreeTextReader()
2225 reader->rngValidCtxt = NULL; in xmlFreeTextReader()
2227 if (reader->xsdPlug != NULL) { in xmlFreeTextReader()
2228 xmlSchemaSAXUnplug(reader->xsdPlug); in xmlFreeTextReader()
2229 reader->xsdPlug = NULL; in xmlFreeTextReader()
2231 if (reader->xsdValidCtxt != NULL) { in xmlFreeTextReader()
2232 if (! reader->xsdPreserveCtxt) in xmlFreeTextReader()
2233 xmlSchemaFreeValidCtxt(reader->xsdValidCtxt); in xmlFreeTextReader()
2234 reader->xsdValidCtxt = NULL; in xmlFreeTextReader()
2236 if (reader->xsdSchemas != NULL) { in xmlFreeTextReader()
2237 xmlSchemaFree(reader->xsdSchemas); in xmlFreeTextReader()
2238 reader->xsdSchemas = NULL; in xmlFreeTextReader()
2242 if (reader->xincctxt != NULL) in xmlFreeTextReader()
2243 xmlXIncludeFreeContext(reader->xincctxt); in xmlFreeTextReader()
2246 if (reader->patternTab != NULL) { in xmlFreeTextReader()
2248 for (i = 0;i < reader->patternNr;i++) { in xmlFreeTextReader()
2249 if (reader->patternTab[i] != NULL) in xmlFreeTextReader()
2250 xmlFreePattern(reader->patternTab[i]); in xmlFreeTextReader()
2252 xmlFree(reader->patternTab); in xmlFreeTextReader()
2255 if (reader->faketext != NULL) { in xmlFreeTextReader()
2256 xmlFreeNode(reader->faketext); in xmlFreeTextReader()
2258 if (reader->ctxt != NULL) { in xmlFreeTextReader()
2259 if (reader->dict == reader->ctxt->dict) in xmlFreeTextReader()
2260 reader->dict = NULL; in xmlFreeTextReader()
2261 if (reader->ctxt->myDoc != NULL) { in xmlFreeTextReader()
2262 if (reader->preserve == 0) in xmlFreeTextReader()
2263 xmlTextReaderFreeDoc(reader, reader->ctxt->myDoc); in xmlFreeTextReader()
2264 reader->ctxt->myDoc = NULL; in xmlFreeTextReader()
2266 if ((reader->ctxt->vctxt.vstateTab != NULL) && in xmlFreeTextReader()
2267 (reader->ctxt->vctxt.vstateMax > 0)){ in xmlFreeTextReader()
2268 xmlFree(reader->ctxt->vctxt.vstateTab); in xmlFreeTextReader()
2269 reader->ctxt->vctxt.vstateTab = NULL; in xmlFreeTextReader()
2270 reader->ctxt->vctxt.vstateMax = 0; in xmlFreeTextReader()
2272 if (reader->allocs & XML_TEXTREADER_CTXT) in xmlFreeTextReader()
2273 xmlFreeParserCtxt(reader->ctxt); in xmlFreeTextReader()
2275 if (reader->sax != NULL) in xmlFreeTextReader()
2276 xmlFree(reader->sax); in xmlFreeTextReader()
2277 if ((reader->input != NULL) && (reader->allocs & XML_TEXTREADER_INPUT)) in xmlFreeTextReader()
2278 xmlFreeParserInputBuffer(reader->input); in xmlFreeTextReader()
2279 if (reader->buffer != NULL) in xmlFreeTextReader()
2280 xmlBufFree(reader->buffer); in xmlFreeTextReader()
2281 if (reader->entTab != NULL) in xmlFreeTextReader()
2282 xmlFree(reader->entTab); in xmlFreeTextReader()
2283 if (reader->dict != NULL) in xmlFreeTextReader()
2284 xmlDictFree(reader->dict); in xmlFreeTextReader()
2285 xmlFree(reader); in xmlFreeTextReader()
2303 xmlTextReaderClose(xmlTextReaderPtr reader) { in xmlTextReaderClose() argument
2304 if (reader == NULL) in xmlTextReaderClose()
2306 reader->node = NULL; in xmlTextReaderClose()
2307 reader->curnode = NULL; in xmlTextReaderClose()
2308 reader->mode = XML_TEXTREADER_MODE_CLOSED; in xmlTextReaderClose()
2309 if (reader->ctxt != NULL) { in xmlTextReaderClose()
2310 xmlStopParser(reader->ctxt); in xmlTextReaderClose()
2311 if (reader->ctxt->myDoc != NULL) { in xmlTextReaderClose()
2312 if (reader->preserve == 0) in xmlTextReaderClose()
2313 xmlTextReaderFreeDoc(reader, reader->ctxt->myDoc); in xmlTextReaderClose()
2314 reader->ctxt->myDoc = NULL; in xmlTextReaderClose()
2317 if ((reader->input != NULL) && (reader->allocs & XML_TEXTREADER_INPUT)) { in xmlTextReaderClose()
2318 xmlFreeParserInputBuffer(reader->input); in xmlTextReaderClose()
2319 reader->allocs -= XML_TEXTREADER_INPUT; in xmlTextReaderClose()
2336 xmlTextReaderGetAttributeNo(xmlTextReaderPtr reader, int no) { in xmlTextReaderGetAttributeNo() argument
2342 if (reader == NULL) in xmlTextReaderGetAttributeNo()
2344 if (reader->node == NULL) in xmlTextReaderGetAttributeNo()
2346 if (reader->curnode != NULL) in xmlTextReaderGetAttributeNo()
2349 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderGetAttributeNo()
2352 ns = reader->node->nsDef; in xmlTextReaderGetAttributeNo()
2359 cur = reader->node->properties; in xmlTextReaderGetAttributeNo()
2369 ret = xmlNodeListGetString(reader->node->doc, cur->children, 1); in xmlTextReaderGetAttributeNo()
2385 xmlTextReaderGetAttribute(xmlTextReaderPtr reader, const xmlChar *name) { in xmlTextReaderGetAttribute() argument
2391 if ((reader == NULL) || (name == NULL)) in xmlTextReaderGetAttribute()
2393 if (reader->node == NULL) in xmlTextReaderGetAttribute()
2395 if (reader->curnode != NULL) in xmlTextReaderGetAttribute()
2399 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderGetAttribute()
2408 ns = reader->node->nsDef; in xmlTextReaderGetAttribute()
2417 return(xmlGetNoNsProp(reader->node, name)); in xmlTextReaderGetAttribute()
2424 ns = reader->node->nsDef; in xmlTextReaderGetAttribute()
2433 ns = xmlSearchNs(reader->node->doc, reader->node, prefix); in xmlTextReaderGetAttribute()
2435 ret = xmlGetNsProp(reader->node, localname, ns->href); in xmlTextReaderGetAttribute()
2457 xmlTextReaderGetAttributeNs(xmlTextReaderPtr reader, const xmlChar *localName, in xmlTextReaderGetAttributeNs() argument
2462 if ((reader == NULL) || (localName == NULL)) in xmlTextReaderGetAttributeNs()
2464 if (reader->node == NULL) in xmlTextReaderGetAttributeNs()
2466 if (reader->curnode != NULL) in xmlTextReaderGetAttributeNs()
2470 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderGetAttributeNs()
2477 ns = reader->node->nsDef; in xmlTextReaderGetAttributeNs()
2488 return(xmlGetNsProp(reader->node, localName, namespaceURI)); in xmlTextReaderGetAttributeNs()
2507 xmlTextReaderGetRemainder(xmlTextReaderPtr reader) { in xmlTextReaderGetRemainder() argument
2510 if (reader == NULL) in xmlTextReaderGetRemainder()
2512 if (reader->node == NULL) in xmlTextReaderGetRemainder()
2515 reader->node = NULL; in xmlTextReaderGetRemainder()
2516 reader->curnode = NULL; in xmlTextReaderGetRemainder()
2517 reader->mode = XML_TEXTREADER_MODE_EOF; in xmlTextReaderGetRemainder()
2518 if (reader->ctxt != NULL) { in xmlTextReaderGetRemainder()
2519 xmlStopParser(reader->ctxt); in xmlTextReaderGetRemainder()
2520 if (reader->ctxt->myDoc != NULL) { in xmlTextReaderGetRemainder()
2521 if (reader->preserve == 0) in xmlTextReaderGetRemainder()
2522 xmlTextReaderFreeDoc(reader, reader->ctxt->myDoc); in xmlTextReaderGetRemainder()
2523 reader->ctxt->myDoc = NULL; in xmlTextReaderGetRemainder()
2526 if (reader->allocs & XML_TEXTREADER_INPUT) { in xmlTextReaderGetRemainder()
2527 ret = reader->input; in xmlTextReaderGetRemainder()
2528 reader->input = NULL; in xmlTextReaderGetRemainder()
2529 reader->allocs -= XML_TEXTREADER_INPUT; in xmlTextReaderGetRemainder()
2555 xmlTextReaderLookupNamespace(xmlTextReaderPtr reader, const xmlChar *prefix) { in xmlTextReaderLookupNamespace() argument
2558 if (reader == NULL) in xmlTextReaderLookupNamespace()
2560 if (reader->node == NULL) in xmlTextReaderLookupNamespace()
2563 ns = xmlSearchNs(reader->node->doc, reader->node, prefix); in xmlTextReaderLookupNamespace()
2581 xmlTextReaderMoveToAttributeNo(xmlTextReaderPtr reader, int no) { in xmlTextReaderMoveToAttributeNo() argument
2586 if (reader == NULL) in xmlTextReaderMoveToAttributeNo()
2588 if (reader->node == NULL) in xmlTextReaderMoveToAttributeNo()
2591 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderMoveToAttributeNo()
2594 reader->curnode = NULL; in xmlTextReaderMoveToAttributeNo()
2596 ns = reader->node->nsDef; in xmlTextReaderMoveToAttributeNo()
2601 reader->curnode = (xmlNodePtr) ns; in xmlTextReaderMoveToAttributeNo()
2605 cur = reader->node->properties; in xmlTextReaderMoveToAttributeNo()
2615 reader->curnode = (xmlNodePtr) cur; in xmlTextReaderMoveToAttributeNo()
2630 xmlTextReaderMoveToAttribute(xmlTextReaderPtr reader, const xmlChar *name) { in xmlTextReaderMoveToAttribute() argument
2636 if ((reader == NULL) || (name == NULL)) in xmlTextReaderMoveToAttribute()
2638 if (reader->node == NULL) in xmlTextReaderMoveToAttribute()
2642 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderMoveToAttribute()
2651 ns = reader->node->nsDef; in xmlTextReaderMoveToAttribute()
2654 reader->curnode = (xmlNodePtr) ns; in xmlTextReaderMoveToAttribute()
2662 prop = reader->node->properties; in xmlTextReaderMoveToAttribute()
2671 reader->curnode = (xmlNodePtr) prop; in xmlTextReaderMoveToAttribute()
2683 ns = reader->node->nsDef; in xmlTextReaderMoveToAttribute()
2686 reader->curnode = (xmlNodePtr) ns; in xmlTextReaderMoveToAttribute()
2693 prop = reader->node->properties; in xmlTextReaderMoveToAttribute()
2702 reader->curnode = (xmlNodePtr) prop; in xmlTextReaderMoveToAttribute()
2734 xmlTextReaderMoveToAttributeNs(xmlTextReaderPtr reader, in xmlTextReaderMoveToAttributeNs() argument
2741 if ((reader == NULL) || (localName == NULL) || (namespaceURI == NULL)) in xmlTextReaderMoveToAttributeNs()
2743 if (reader->node == NULL) in xmlTextReaderMoveToAttributeNs()
2745 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderMoveToAttributeNs()
2747 node = reader->node; in xmlTextReaderMoveToAttributeNs()
2753 ns = reader->node->nsDef; in xmlTextReaderMoveToAttributeNs()
2757 reader->curnode = (xmlNodePtr) ns; in xmlTextReaderMoveToAttributeNs()
2775 reader->curnode = (xmlNodePtr) prop; in xmlTextReaderMoveToAttributeNs()
2793 xmlTextReaderMoveToFirstAttribute(xmlTextReaderPtr reader) { in xmlTextReaderMoveToFirstAttribute() argument
2794 if (reader == NULL) in xmlTextReaderMoveToFirstAttribute()
2796 if (reader->node == NULL) in xmlTextReaderMoveToFirstAttribute()
2798 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderMoveToFirstAttribute()
2801 if (reader->node->nsDef != NULL) { in xmlTextReaderMoveToFirstAttribute()
2802 reader->curnode = (xmlNodePtr) reader->node->nsDef; in xmlTextReaderMoveToFirstAttribute()
2805 if (reader->node->properties != NULL) { in xmlTextReaderMoveToFirstAttribute()
2806 reader->curnode = (xmlNodePtr) reader->node->properties; in xmlTextReaderMoveToFirstAttribute()
2822 xmlTextReaderMoveToNextAttribute(xmlTextReaderPtr reader) { in xmlTextReaderMoveToNextAttribute() argument
2823 if (reader == NULL) in xmlTextReaderMoveToNextAttribute()
2825 if (reader->node == NULL) in xmlTextReaderMoveToNextAttribute()
2827 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderMoveToNextAttribute()
2829 if (reader->curnode == NULL) in xmlTextReaderMoveToNextAttribute()
2830 return(xmlTextReaderMoveToFirstAttribute(reader)); in xmlTextReaderMoveToNextAttribute()
2832 if (reader->curnode->type == XML_NAMESPACE_DECL) { in xmlTextReaderMoveToNextAttribute()
2833 xmlNsPtr ns = (xmlNsPtr) reader->curnode; in xmlTextReaderMoveToNextAttribute()
2835 reader->curnode = (xmlNodePtr) ns->next; in xmlTextReaderMoveToNextAttribute()
2838 if (reader->node->properties != NULL) { in xmlTextReaderMoveToNextAttribute()
2839 reader->curnode = (xmlNodePtr) reader->node->properties; in xmlTextReaderMoveToNextAttribute()
2843 } else if ((reader->curnode->type == XML_ATTRIBUTE_NODE) && in xmlTextReaderMoveToNextAttribute()
2844 (reader->curnode->next != NULL)) { in xmlTextReaderMoveToNextAttribute()
2845 reader->curnode = reader->curnode->next; in xmlTextReaderMoveToNextAttribute()
2861 xmlTextReaderMoveToElement(xmlTextReaderPtr reader) { in xmlTextReaderMoveToElement() argument
2862 if (reader == NULL) in xmlTextReaderMoveToElement()
2864 if (reader->node == NULL) in xmlTextReaderMoveToElement()
2866 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderMoveToElement()
2868 if (reader->curnode != NULL) { in xmlTextReaderMoveToElement()
2869 reader->curnode = NULL; in xmlTextReaderMoveToElement()
2886 xmlTextReaderReadAttributeValue(xmlTextReaderPtr reader) { in xmlTextReaderReadAttributeValue() argument
2887 if (reader == NULL) in xmlTextReaderReadAttributeValue()
2889 if (reader->node == NULL) in xmlTextReaderReadAttributeValue()
2891 if (reader->curnode == NULL) in xmlTextReaderReadAttributeValue()
2893 if (reader->curnode->type == XML_ATTRIBUTE_NODE) { in xmlTextReaderReadAttributeValue()
2894 if (reader->curnode->children == NULL) in xmlTextReaderReadAttributeValue()
2896 reader->curnode = reader->curnode->children; in xmlTextReaderReadAttributeValue()
2897 } else if (reader->curnode->type == XML_NAMESPACE_DECL) { in xmlTextReaderReadAttributeValue()
2898 xmlNsPtr ns = (xmlNsPtr) reader->curnode; in xmlTextReaderReadAttributeValue()
2900 if (reader->faketext == NULL) { in xmlTextReaderReadAttributeValue()
2901 reader->faketext = xmlNewDocText(reader->node->doc, in xmlTextReaderReadAttributeValue()
2904 if ((reader->faketext->content != NULL) && in xmlTextReaderReadAttributeValue()
2905 (reader->faketext->content != in xmlTextReaderReadAttributeValue()
2906 (xmlChar *) &(reader->faketext->properties))) in xmlTextReaderReadAttributeValue()
2907 xmlFree(reader->faketext->content); in xmlTextReaderReadAttributeValue()
2908 reader->faketext->content = xmlStrdup(ns->href); in xmlTextReaderReadAttributeValue()
2910 reader->curnode = reader->faketext; in xmlTextReaderReadAttributeValue()
2912 if (reader->curnode->next == NULL) in xmlTextReaderReadAttributeValue()
2914 reader->curnode = reader->curnode->next; in xmlTextReaderReadAttributeValue()
2929 xmlTextReaderConstEncoding(xmlTextReaderPtr reader) { in xmlTextReaderConstEncoding() argument
2931 if (reader == NULL) in xmlTextReaderConstEncoding()
2933 if (reader->doc != NULL) in xmlTextReaderConstEncoding()
2934 doc = reader->doc; in xmlTextReaderConstEncoding()
2935 else if (reader->ctxt != NULL) in xmlTextReaderConstEncoding()
2936 doc = reader->ctxt->myDoc; in xmlTextReaderConstEncoding()
2961 xmlTextReaderAttributeCount(xmlTextReaderPtr reader) { in xmlTextReaderAttributeCount() argument
2967 if (reader == NULL) in xmlTextReaderAttributeCount()
2969 if (reader->node == NULL) in xmlTextReaderAttributeCount()
2972 if (reader->curnode != NULL) in xmlTextReaderAttributeCount()
2973 node = reader->curnode; in xmlTextReaderAttributeCount()
2975 node = reader->node; in xmlTextReaderAttributeCount()
2979 if ((reader->state == XML_TEXTREADER_END) || in xmlTextReaderAttributeCount()
2980 (reader->state == XML_TEXTREADER_BACKTRACK)) in xmlTextReaderAttributeCount()
3007 xmlTextReaderNodeType(xmlTextReaderPtr reader) { in xmlTextReaderNodeType() argument
3010 if (reader == NULL) in xmlTextReaderNodeType()
3012 if (reader->node == NULL) in xmlTextReaderNodeType()
3014 if (reader->curnode != NULL) in xmlTextReaderNodeType()
3015 node = reader->curnode; in xmlTextReaderNodeType()
3017 node = reader->node; in xmlTextReaderNodeType()
3020 if ((reader->state == XML_TEXTREADER_END) || in xmlTextReaderNodeType()
3021 (reader->state == XML_TEXTREADER_BACKTRACK)) in xmlTextReaderNodeType()
3028 if (xmlIsBlankNode(reader->node)) { in xmlTextReaderNodeType()
3029 if (xmlNodeGetSpacePreserve(reader->node)) in xmlTextReaderNodeType()
3079 xmlTextReaderIsEmptyElement(xmlTextReaderPtr reader) { in xmlTextReaderIsEmptyElement() argument
3080 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderIsEmptyElement()
3082 if (reader->node->type != XML_ELEMENT_NODE) in xmlTextReaderIsEmptyElement()
3084 if (reader->curnode != NULL) in xmlTextReaderIsEmptyElement()
3086 if (reader->node->children != NULL) in xmlTextReaderIsEmptyElement()
3088 if (reader->state == XML_TEXTREADER_END) in xmlTextReaderIsEmptyElement()
3090 if (reader->doc != NULL) in xmlTextReaderIsEmptyElement()
3093 if (reader->in_xinclude > 0) in xmlTextReaderIsEmptyElement()
3096 return((reader->node->extra & NODE_IS_EMPTY) != 0); in xmlTextReaderIsEmptyElement()
3109 xmlTextReaderLocalName(xmlTextReaderPtr reader) { in xmlTextReaderLocalName() argument
3111 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderLocalName()
3113 if (reader->curnode != NULL) in xmlTextReaderLocalName()
3114 node = reader->curnode; in xmlTextReaderLocalName()
3116 node = reader->node; in xmlTextReaderLocalName()
3126 return(xmlTextReaderName(reader)); in xmlTextReaderLocalName()
3140 xmlTextReaderConstLocalName(xmlTextReaderPtr reader) { in xmlTextReaderConstLocalName() argument
3142 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderConstLocalName()
3144 if (reader->curnode != NULL) in xmlTextReaderConstLocalName()
3145 node = reader->curnode; in xmlTextReaderConstLocalName()
3147 node = reader->node; in xmlTextReaderConstLocalName()
3157 return(xmlTextReaderConstName(reader)); in xmlTextReaderConstLocalName()
3171 xmlTextReaderName(xmlTextReaderPtr reader) { in xmlTextReaderName() argument
3175 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderName()
3177 if (reader->curnode != NULL) in xmlTextReaderName()
3178 node = reader->curnode; in xmlTextReaderName()
3180 node = reader->node; in xmlTextReaderName()
3247 xmlTextReaderConstName(xmlTextReaderPtr reader) { in xmlTextReaderConstName() argument
3250 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderConstName()
3252 if (reader->curnode != NULL) in xmlTextReaderConstName()
3253 node = reader->curnode; in xmlTextReaderConstName()
3255 node = reader->node; in xmlTextReaderConstName()
3315 xmlTextReaderPrefix(xmlTextReaderPtr reader) { in xmlTextReaderPrefix() argument
3317 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderPrefix()
3319 if (reader->curnode != NULL) in xmlTextReaderPrefix()
3320 node = reader->curnode; in xmlTextReaderPrefix()
3322 node = reader->node; in xmlTextReaderPrefix()
3347 xmlTextReaderConstPrefix(xmlTextReaderPtr reader) { in xmlTextReaderConstPrefix() argument
3349 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderConstPrefix()
3351 if (reader->curnode != NULL) in xmlTextReaderConstPrefix()
3352 node = reader->curnode; in xmlTextReaderConstPrefix()
3354 node = reader->node; in xmlTextReaderConstPrefix()
3379 xmlTextReaderNamespaceUri(xmlTextReaderPtr reader) { in xmlTextReaderNamespaceUri() argument
3381 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderNamespaceUri()
3383 if (reader->curnode != NULL) in xmlTextReaderNamespaceUri()
3384 node = reader->curnode; in xmlTextReaderNamespaceUri()
3386 node = reader->node; in xmlTextReaderNamespaceUri()
3407 xmlTextReaderConstNamespaceUri(xmlTextReaderPtr reader) { in xmlTextReaderConstNamespaceUri() argument
3409 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderConstNamespaceUri()
3411 if (reader->curnode != NULL) in xmlTextReaderConstNamespaceUri()
3412 node = reader->curnode; in xmlTextReaderConstNamespaceUri()
3414 node = reader->node; in xmlTextReaderConstNamespaceUri()
3435 xmlTextReaderBaseUri(xmlTextReaderPtr reader) { in xmlTextReaderBaseUri() argument
3436 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderBaseUri()
3438 return(xmlNodeGetBase(NULL, reader->node)); in xmlTextReaderBaseUri()
3451 xmlTextReaderConstBaseUri(xmlTextReaderPtr reader) { in xmlTextReaderConstBaseUri() argument
3455 if ((reader == NULL) || (reader->node == NULL)) in xmlTextReaderConstBaseUri()
3457 tmp = xmlNodeGetBase(NULL, reader->node); in xmlTextReaderConstBaseUri()
3474 xmlTextReaderDepth(xmlTextReaderPtr reader) { in xmlTextReaderDepth() argument
3475 if (reader == NULL) in xmlTextReaderDepth()
3477 if (reader->node == NULL) in xmlTextReaderDepth()
3480 if (reader->curnode != NULL) { in xmlTextReaderDepth()
3481 if ((reader->curnode->type == XML_ATTRIBUTE_NODE) || in xmlTextReaderDepth()
3482 (reader->curnode->type == XML_NAMESPACE_DECL)) in xmlTextReaderDepth()
3483 return(reader->depth + 1); in xmlTextReaderDepth()
3484 return(reader->depth + 2); in xmlTextReaderDepth()
3486 return(reader->depth); in xmlTextReaderDepth()
3498 xmlTextReaderHasAttributes(xmlTextReaderPtr reader) { in xmlTextReaderHasAttributes() argument
3500 if (reader == NULL) in xmlTextReaderHasAttributes()
3502 if (reader->node == NULL) in xmlTextReaderHasAttributes()
3504 if (reader->curnode != NULL) in xmlTextReaderHasAttributes()
3505 node = reader->curnode; in xmlTextReaderHasAttributes()
3507 node = reader->node; in xmlTextReaderHasAttributes()
3525 xmlTextReaderHasValue(xmlTextReaderPtr reader) { in xmlTextReaderHasValue() argument
3527 if (reader == NULL) in xmlTextReaderHasValue()
3529 if (reader->node == NULL) in xmlTextReaderHasValue()
3531 if (reader->curnode != NULL) in xmlTextReaderHasValue()
3532 node = reader->curnode; in xmlTextReaderHasValue()
3534 node = reader->node; in xmlTextReaderHasValue()
3560 xmlTextReaderValue(xmlTextReaderPtr reader) { in xmlTextReaderValue() argument
3562 if (reader == NULL) in xmlTextReaderValue()
3564 if (reader->node == NULL) in xmlTextReaderValue()
3566 if (reader->curnode != NULL) in xmlTextReaderValue()
3567 node = reader->curnode; in xmlTextReaderValue()
3569 node = reader->node; in xmlTextReaderValue()
3606 xmlTextReaderConstValue(xmlTextReaderPtr reader) { in xmlTextReaderConstValue() argument
3608 if (reader == NULL) in xmlTextReaderConstValue()
3610 if (reader->node == NULL) in xmlTextReaderConstValue()
3612 if (reader->curnode != NULL) in xmlTextReaderConstValue()
3613 node = reader->curnode; in xmlTextReaderConstValue()
3615 node = reader->node; in xmlTextReaderConstValue()
3629 if (reader->buffer == NULL) { in xmlTextReaderConstValue()
3630 reader->buffer = xmlBufCreateSize(100); in xmlTextReaderConstValue()
3631 if (reader->buffer == NULL) { in xmlTextReaderConstValue()
3636 xmlBufSetAllocationScheme(reader->buffer, in xmlTextReaderConstValue()
3639 xmlBufEmpty(reader->buffer); in xmlTextReaderConstValue()
3640 xmlBufGetNodeContent(reader->buffer, node); in xmlTextReaderConstValue()
3641 ret = xmlBufContent(reader->buffer); in xmlTextReaderConstValue()
3644 xmlBufFree(reader->buffer); in xmlTextReaderConstValue()
3645 reader->buffer = xmlBufCreateSize(100); in xmlTextReaderConstValue()
3646 xmlBufSetAllocationScheme(reader->buffer, in xmlTextReaderConstValue()
3675 xmlTextReaderIsDefault(xmlTextReaderPtr reader) { in xmlTextReaderIsDefault() argument
3676 if (reader == NULL) in xmlTextReaderIsDefault()
3690 xmlTextReaderQuoteChar(xmlTextReaderPtr reader) { in xmlTextReaderQuoteChar() argument
3691 if (reader == NULL) in xmlTextReaderQuoteChar()
3707 xmlTextReaderXmlLang(xmlTextReaderPtr reader) { in xmlTextReaderXmlLang() argument
3708 if (reader == NULL) in xmlTextReaderXmlLang()
3710 if (reader->node == NULL) in xmlTextReaderXmlLang()
3712 return(xmlNodeGetLang(reader->node)); in xmlTextReaderXmlLang()
3724 xmlTextReaderConstXmlLang(xmlTextReaderPtr reader) { in xmlTextReaderConstXmlLang() argument
3728 if (reader == NULL) in xmlTextReaderConstXmlLang()
3730 if (reader->node == NULL) in xmlTextReaderConstXmlLang()
3732 tmp = xmlNodeGetLang(reader->node); in xmlTextReaderConstXmlLang()
3752 xmlTextReaderConstString(xmlTextReaderPtr reader, const xmlChar *str) { in xmlTextReaderConstString() argument
3753 if (reader == NULL) in xmlTextReaderConstString()
3771 xmlTextReaderNormalization(xmlTextReaderPtr reader) { in xmlTextReaderNormalization() argument
3772 if (reader == NULL) in xmlTextReaderNormalization()
3796 xmlTextReaderSetParserProp(xmlTextReaderPtr reader, int prop, int value) { in xmlTextReaderSetParserProp() argument
3800 if ((reader == NULL) || (reader->ctxt == NULL)) in xmlTextReaderSetParserProp()
3802 ctxt = reader->ctxt; in xmlTextReaderSetParserProp()
3808 if (reader->mode != XML_TEXTREADER_MODE_INITIAL) in xmlTextReaderSetParserProp()
3827 reader->validate = XML_TEXTREADER_VALIDATE_DTD; in xmlTextReaderSetParserProp()
3853 xmlTextReaderGetParserProp(xmlTextReaderPtr reader, int prop) { in xmlTextReaderGetParserProp() argument
3857 if ((reader == NULL) || (reader->ctxt == NULL)) in xmlTextReaderGetParserProp()
3859 ctxt = reader->ctxt; in xmlTextReaderGetParserProp()
3871 return(reader->validate); in xmlTextReaderGetParserProp()
3888 xmlTextReaderGetParserLineNumber(xmlTextReaderPtr reader) in xmlTextReaderGetParserLineNumber() argument
3890 if ((reader == NULL) || (reader->ctxt == NULL) || in xmlTextReaderGetParserLineNumber()
3891 (reader->ctxt->input == NULL)) { in xmlTextReaderGetParserLineNumber()
3894 return (reader->ctxt->input->line); in xmlTextReaderGetParserLineNumber()
3906 xmlTextReaderGetParserColumnNumber(xmlTextReaderPtr reader) in xmlTextReaderGetParserColumnNumber() argument
3908 if ((reader == NULL) || (reader->ctxt == NULL) || in xmlTextReaderGetParserColumnNumber()
3909 (reader->ctxt->input == NULL)) { in xmlTextReaderGetParserColumnNumber()
3912 return (reader->ctxt->input->col); in xmlTextReaderGetParserColumnNumber()
3926 xmlTextReaderCurrentNode(xmlTextReaderPtr reader) { in xmlTextReaderCurrentNode() argument
3927 if (reader == NULL) in xmlTextReaderCurrentNode()
3930 if (reader->curnode != NULL) in xmlTextReaderCurrentNode()
3931 return(reader->curnode); in xmlTextReaderCurrentNode()
3932 return(reader->node); in xmlTextReaderCurrentNode()
3946 xmlTextReaderPreserve(xmlTextReaderPtr reader) { in xmlTextReaderPreserve() argument
3949 if (reader == NULL) in xmlTextReaderPreserve()
3952 if (reader->curnode != NULL) in xmlTextReaderPreserve()
3953 cur = reader->curnode; in xmlTextReaderPreserve()
3955 cur = reader->node; in xmlTextReaderPreserve()
3963 reader->preserves++; in xmlTextReaderPreserve()
3988 xmlTextReaderPreservePattern(xmlTextReaderPtr reader, const xmlChar *pattern, in xmlTextReaderPreservePattern() argument
3993 if ((reader == NULL) || (pattern == NULL)) in xmlTextReaderPreservePattern()
3996 comp = xmlPatterncompile(pattern, reader->dict, 0, namespaces); in xmlTextReaderPreservePattern()
4000 if (reader->patternMax <= 0) { in xmlTextReaderPreservePattern()
4001 reader->patternMax = 4; in xmlTextReaderPreservePattern()
4002 reader->patternTab = (xmlPatternPtr *) xmlMalloc(reader->patternMax * in xmlTextReaderPreservePattern()
4003 sizeof(reader->patternTab[0])); in xmlTextReaderPreservePattern()
4004 if (reader->patternTab == NULL) { in xmlTextReaderPreservePattern()
4009 if (reader->patternNr >= reader->patternMax) { in xmlTextReaderPreservePattern()
4011 reader->patternMax *= 2; in xmlTextReaderPreservePattern()
4012 tmp = (xmlPatternPtr *) xmlRealloc(reader->patternTab, in xmlTextReaderPreservePattern()
4013 reader->patternMax * in xmlTextReaderPreservePattern()
4014 sizeof(reader->patternTab[0])); in xmlTextReaderPreservePattern()
4017 reader->patternMax /= 2; in xmlTextReaderPreservePattern()
4020 reader->patternTab = tmp; in xmlTextReaderPreservePattern()
4022 reader->patternTab[reader->patternNr] = comp; in xmlTextReaderPreservePattern()
4023 return(reader->patternNr++); in xmlTextReaderPreservePattern()
4040 xmlTextReaderCurrentDoc(xmlTextReaderPtr reader) { in xmlTextReaderCurrentDoc() argument
4041 if (reader == NULL) in xmlTextReaderCurrentDoc()
4043 if (reader->doc != NULL) in xmlTextReaderCurrentDoc()
4044 return(reader->doc); in xmlTextReaderCurrentDoc()
4045 if ((reader->ctxt == NULL) || (reader->ctxt->myDoc == NULL)) in xmlTextReaderCurrentDoc()
4048 reader->preserve = 1; in xmlTextReaderCurrentDoc()
4049 return(reader->ctxt->myDoc); in xmlTextReaderCurrentDoc()
4064 xmlTextReaderPtr reader = (xmlTextReaderPtr) ctx; in xmlTextReaderValidityErrorRelay() local
4072 if (!reader->errorFunc) { in xmlTextReaderValidityErrorRelay()
4075 reader->errorFunc(reader->errorFuncArg, str, in xmlTextReaderValidityErrorRelay()
4087 xmlTextReaderPtr reader = (xmlTextReaderPtr) ctx; in xmlTextReaderValidityWarningRelay() local
4095 if (!reader->errorFunc) { in xmlTextReaderValidityWarningRelay()
4098 reader->errorFunc(reader->errorFuncArg, str, in xmlTextReaderValidityWarningRelay()
4113 xmlTextReaderPtr reader = (xmlTextReaderPtr) userData; in xmlTextReaderValidityStructuredRelay() local
4115 if (reader->sErrorFunc) { in xmlTextReaderValidityStructuredRelay()
4116 reader->sErrorFunc(reader->errorFuncArg, error); in xmlTextReaderValidityStructuredRelay()
4118 xmlTextReaderStructuredError(reader, error); in xmlTextReaderValidityStructuredRelay()
4136 xmlTextReaderRelaxNGSetSchema(xmlTextReaderPtr reader, xmlRelaxNGPtr schema) { in xmlTextReaderRelaxNGSetSchema() argument
4137 if (reader == NULL) in xmlTextReaderRelaxNGSetSchema()
4140 if (reader->rngSchemas != NULL) { in xmlTextReaderRelaxNGSetSchema()
4141 xmlRelaxNGFree(reader->rngSchemas); in xmlTextReaderRelaxNGSetSchema()
4142 reader->rngSchemas = NULL; in xmlTextReaderRelaxNGSetSchema()
4144 if (reader->rngValidCtxt != NULL) { in xmlTextReaderRelaxNGSetSchema()
4145 if (! reader->rngPreserveCtxt) in xmlTextReaderRelaxNGSetSchema()
4146 xmlRelaxNGFreeValidCtxt(reader->rngValidCtxt); in xmlTextReaderRelaxNGSetSchema()
4147 reader->rngValidCtxt = NULL; in xmlTextReaderRelaxNGSetSchema()
4149 reader->rngPreserveCtxt = 0; in xmlTextReaderRelaxNGSetSchema()
4152 if (reader->mode != XML_TEXTREADER_MODE_INITIAL) in xmlTextReaderRelaxNGSetSchema()
4154 if (reader->rngSchemas != NULL) { in xmlTextReaderRelaxNGSetSchema()
4155 xmlRelaxNGFree(reader->rngSchemas); in xmlTextReaderRelaxNGSetSchema()
4156 reader->rngSchemas = NULL; in xmlTextReaderRelaxNGSetSchema()
4158 if (reader->rngValidCtxt != NULL) { in xmlTextReaderRelaxNGSetSchema()
4159 if (! reader->rngPreserveCtxt) in xmlTextReaderRelaxNGSetSchema()
4160 xmlRelaxNGFreeValidCtxt(reader->rngValidCtxt); in xmlTextReaderRelaxNGSetSchema()
4161 reader->rngValidCtxt = NULL; in xmlTextReaderRelaxNGSetSchema()
4163 reader->rngPreserveCtxt = 0; in xmlTextReaderRelaxNGSetSchema()
4164 reader->rngValidCtxt = xmlRelaxNGNewValidCtxt(schema); in xmlTextReaderRelaxNGSetSchema()
4165 if (reader->rngValidCtxt == NULL) in xmlTextReaderRelaxNGSetSchema()
4167 if (reader->errorFunc != NULL) { in xmlTextReaderRelaxNGSetSchema()
4168 xmlRelaxNGSetValidErrors(reader->rngValidCtxt, in xmlTextReaderRelaxNGSetSchema()
4171 reader); in xmlTextReaderRelaxNGSetSchema()
4173 if (reader->sErrorFunc != NULL) { in xmlTextReaderRelaxNGSetSchema()
4174 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, in xmlTextReaderRelaxNGSetSchema()
4176 reader); in xmlTextReaderRelaxNGSetSchema()
4178 reader->rngValidErrors = 0; in xmlTextReaderRelaxNGSetSchema()
4179 reader->rngFullNode = NULL; in xmlTextReaderRelaxNGSetSchema()
4180 reader->validate = XML_TEXTREADER_VALIDATE_RNG; in xmlTextReaderRelaxNGSetSchema()
4197 xmlTextReaderPtr reader; in xmlTextReaderLocator() local
4207 reader = (xmlTextReaderPtr) ctx; in xmlTextReaderLocator()
4208 if ((reader->ctxt != NULL) && (reader->ctxt->input != NULL)) { in xmlTextReaderLocator()
4210 *file = reader->ctxt->input->filename; in xmlTextReaderLocator()
4212 *line = reader->ctxt->input->line; in xmlTextReaderLocator()
4215 if (reader->node != NULL) { in xmlTextReaderLocator()
4220 res = xmlGetLineNo(reader->node); in xmlTextReaderLocator()
4227 xmlDocPtr doc = reader->node->doc; in xmlTextReaderLocator()
4253 xmlTextReaderSetSchema(xmlTextReaderPtr reader, xmlSchemaPtr schema) { in xmlTextReaderSetSchema() argument
4254 if (reader == NULL) in xmlTextReaderSetSchema()
4257 if (reader->xsdPlug != NULL) { in xmlTextReaderSetSchema()
4258 xmlSchemaSAXUnplug(reader->xsdPlug); in xmlTextReaderSetSchema()
4259 reader->xsdPlug = NULL; in xmlTextReaderSetSchema()
4261 if (reader->xsdValidCtxt != NULL) { in xmlTextReaderSetSchema()
4262 if (! reader->xsdPreserveCtxt) in xmlTextReaderSetSchema()
4263 xmlSchemaFreeValidCtxt(reader->xsdValidCtxt); in xmlTextReaderSetSchema()
4264 reader->xsdValidCtxt = NULL; in xmlTextReaderSetSchema()
4266 reader->xsdPreserveCtxt = 0; in xmlTextReaderSetSchema()
4267 if (reader->xsdSchemas != NULL) { in xmlTextReaderSetSchema()
4268 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSetSchema()
4269 reader->xsdSchemas = NULL; in xmlTextReaderSetSchema()
4273 if (reader->mode != XML_TEXTREADER_MODE_INITIAL) in xmlTextReaderSetSchema()
4275 if (reader->xsdPlug != NULL) { in xmlTextReaderSetSchema()
4276 xmlSchemaSAXUnplug(reader->xsdPlug); in xmlTextReaderSetSchema()
4277 reader->xsdPlug = NULL; in xmlTextReaderSetSchema()
4279 if (reader->xsdValidCtxt != NULL) { in xmlTextReaderSetSchema()
4280 if (! reader->xsdPreserveCtxt) in xmlTextReaderSetSchema()
4281 xmlSchemaFreeValidCtxt(reader->xsdValidCtxt); in xmlTextReaderSetSchema()
4282 reader->xsdValidCtxt = NULL; in xmlTextReaderSetSchema()
4284 reader->xsdPreserveCtxt = 0; in xmlTextReaderSetSchema()
4285 if (reader->xsdSchemas != NULL) { in xmlTextReaderSetSchema()
4286 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSetSchema()
4287 reader->xsdSchemas = NULL; in xmlTextReaderSetSchema()
4289 reader->xsdValidCtxt = xmlSchemaNewValidCtxt(schema); in xmlTextReaderSetSchema()
4290 if (reader->xsdValidCtxt == NULL) { in xmlTextReaderSetSchema()
4291 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSetSchema()
4292 reader->xsdSchemas = NULL; in xmlTextReaderSetSchema()
4295 reader->xsdPlug = xmlSchemaSAXPlug(reader->xsdValidCtxt, in xmlTextReaderSetSchema()
4296 &(reader->ctxt->sax), in xmlTextReaderSetSchema()
4297 &(reader->ctxt->userData)); in xmlTextReaderSetSchema()
4298 if (reader->xsdPlug == NULL) { in xmlTextReaderSetSchema()
4299 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSetSchema()
4300 reader->xsdSchemas = NULL; in xmlTextReaderSetSchema()
4301 xmlSchemaFreeValidCtxt(reader->xsdValidCtxt); in xmlTextReaderSetSchema()
4302 reader->xsdValidCtxt = NULL; in xmlTextReaderSetSchema()
4305 xmlSchemaValidateSetLocator(reader->xsdValidCtxt, in xmlTextReaderSetSchema()
4307 (void *) reader); in xmlTextReaderSetSchema()
4309 if (reader->errorFunc != NULL) { in xmlTextReaderSetSchema()
4310 xmlSchemaSetValidErrors(reader->xsdValidCtxt, in xmlTextReaderSetSchema()
4313 reader); in xmlTextReaderSetSchema()
4315 if (reader->sErrorFunc != NULL) { in xmlTextReaderSetSchema()
4316 xmlSchemaSetValidStructuredErrors(reader->xsdValidCtxt, in xmlTextReaderSetSchema()
4318 reader); in xmlTextReaderSetSchema()
4320 reader->xsdValidErrors = 0; in xmlTextReaderSetSchema()
4321 reader->validate = XML_TEXTREADER_VALIDATE_XSD; in xmlTextReaderSetSchema()
4340 xmlTextReaderRelaxNGValidateInternal(xmlTextReaderPtr reader, in xmlTextReaderRelaxNGValidateInternal() argument
4345 if (reader == NULL) in xmlTextReaderRelaxNGValidateInternal()
4352 ((reader->mode != XML_TEXTREADER_MODE_INITIAL) || in xmlTextReaderRelaxNGValidateInternal()
4353 (reader->ctxt == NULL))) in xmlTextReaderRelaxNGValidateInternal()
4357 if (reader->rngValidCtxt != NULL) { in xmlTextReaderRelaxNGValidateInternal()
4358 if ( !reader->rngPreserveCtxt) in xmlTextReaderRelaxNGValidateInternal()
4359 xmlRelaxNGFreeValidCtxt(reader->rngValidCtxt); in xmlTextReaderRelaxNGValidateInternal()
4360 reader->rngValidCtxt = NULL; in xmlTextReaderRelaxNGValidateInternal()
4362 reader->rngPreserveCtxt = 0; in xmlTextReaderRelaxNGValidateInternal()
4363 if (reader->rngSchemas != NULL) { in xmlTextReaderRelaxNGValidateInternal()
4364 xmlRelaxNGFree(reader->rngSchemas); in xmlTextReaderRelaxNGValidateInternal()
4365 reader->rngSchemas = NULL; in xmlTextReaderRelaxNGValidateInternal()
4379 if (reader->errorFunc != NULL) { in xmlTextReaderRelaxNGValidateInternal()
4383 reader); in xmlTextReaderRelaxNGValidateInternal()
4385 if (reader->sErrorFunc != NULL) { in xmlTextReaderRelaxNGValidateInternal()
4386 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, in xmlTextReaderRelaxNGValidateInternal()
4388 reader); in xmlTextReaderRelaxNGValidateInternal()
4390 reader->rngSchemas = xmlRelaxNGParse(pctxt); in xmlTextReaderRelaxNGValidateInternal()
4392 if (reader->rngSchemas == NULL) in xmlTextReaderRelaxNGValidateInternal()
4394 reader->rngValidCtxt = xmlRelaxNGNewValidCtxt(reader->rngSchemas); in xmlTextReaderRelaxNGValidateInternal()
4395 if (reader->rngValidCtxt == NULL) { in xmlTextReaderRelaxNGValidateInternal()
4396 xmlRelaxNGFree(reader->rngSchemas); in xmlTextReaderRelaxNGValidateInternal()
4397 reader->rngSchemas = NULL; in xmlTextReaderRelaxNGValidateInternal()
4402 reader->rngValidCtxt = ctxt; in xmlTextReaderRelaxNGValidateInternal()
4403 reader->rngPreserveCtxt = 1; in xmlTextReaderRelaxNGValidateInternal()
4411 if (reader->errorFunc != NULL) { in xmlTextReaderRelaxNGValidateInternal()
4412 xmlRelaxNGSetValidErrors(reader->rngValidCtxt, in xmlTextReaderRelaxNGValidateInternal()
4415 reader); in xmlTextReaderRelaxNGValidateInternal()
4417 if (reader->sErrorFunc != NULL) { in xmlTextReaderRelaxNGValidateInternal()
4418 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, in xmlTextReaderRelaxNGValidateInternal()
4420 reader); in xmlTextReaderRelaxNGValidateInternal()
4422 reader->rngValidErrors = 0; in xmlTextReaderRelaxNGValidateInternal()
4423 reader->rngFullNode = NULL; in xmlTextReaderRelaxNGValidateInternal()
4424 reader->validate = XML_TEXTREADER_VALIDATE_RNG; in xmlTextReaderRelaxNGValidateInternal()
4443 xmlTextReaderSchemaValidateInternal(xmlTextReaderPtr reader, in xmlTextReaderSchemaValidateInternal() argument
4448 if (reader == NULL) in xmlTextReaderSchemaValidateInternal()
4455 ((reader->mode != XML_TEXTREADER_MODE_INITIAL) || in xmlTextReaderSchemaValidateInternal()
4456 (reader->ctxt == NULL))) in xmlTextReaderSchemaValidateInternal()
4460 if (reader->xsdPlug != NULL) { in xmlTextReaderSchemaValidateInternal()
4461 xmlSchemaSAXUnplug(reader->xsdPlug); in xmlTextReaderSchemaValidateInternal()
4462 reader->xsdPlug = NULL; in xmlTextReaderSchemaValidateInternal()
4464 if (reader->xsdValidCtxt != NULL) { in xmlTextReaderSchemaValidateInternal()
4465 if (! reader->xsdPreserveCtxt) in xmlTextReaderSchemaValidateInternal()
4466 xmlSchemaFreeValidCtxt(reader->xsdValidCtxt); in xmlTextReaderSchemaValidateInternal()
4467 reader->xsdValidCtxt = NULL; in xmlTextReaderSchemaValidateInternal()
4469 reader->xsdPreserveCtxt = 0; in xmlTextReaderSchemaValidateInternal()
4470 if (reader->xsdSchemas != NULL) { in xmlTextReaderSchemaValidateInternal()
4471 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSchemaValidateInternal()
4472 reader->xsdSchemas = NULL; in xmlTextReaderSchemaValidateInternal()
4484 if (reader->errorFunc != NULL) { in xmlTextReaderSchemaValidateInternal()
4488 reader); in xmlTextReaderSchemaValidateInternal()
4490 reader->xsdSchemas = xmlSchemaParse(pctxt); in xmlTextReaderSchemaValidateInternal()
4492 if (reader->xsdSchemas == NULL) in xmlTextReaderSchemaValidateInternal()
4494 reader->xsdValidCtxt = xmlSchemaNewValidCtxt(reader->xsdSchemas); in xmlTextReaderSchemaValidateInternal()
4495 if (reader->xsdValidCtxt == NULL) { in xmlTextReaderSchemaValidateInternal()
4496 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSchemaValidateInternal()
4497 reader->xsdSchemas = NULL; in xmlTextReaderSchemaValidateInternal()
4500 reader->xsdPlug = xmlSchemaSAXPlug(reader->xsdValidCtxt, in xmlTextReaderSchemaValidateInternal()
4501 &(reader->ctxt->sax), in xmlTextReaderSchemaValidateInternal()
4502 &(reader->ctxt->userData)); in xmlTextReaderSchemaValidateInternal()
4503 if (reader->xsdPlug == NULL) { in xmlTextReaderSchemaValidateInternal()
4504 xmlSchemaFree(reader->xsdSchemas); in xmlTextReaderSchemaValidateInternal()
4505 reader->xsdSchemas = NULL; in xmlTextReaderSchemaValidateInternal()
4506 xmlSchemaFreeValidCtxt(reader->xsdValidCtxt); in xmlTextReaderSchemaValidateInternal()
4507 reader->xsdValidCtxt = NULL; in xmlTextReaderSchemaValidateInternal()
4512 reader->xsdValidCtxt = ctxt; in xmlTextReaderSchemaValidateInternal()
4513 reader->xsdPreserveCtxt = 1; in xmlTextReaderSchemaValidateInternal()
4514 reader->xsdPlug = xmlSchemaSAXPlug(reader->xsdValidCtxt, in xmlTextReaderSchemaValidateInternal()
4515 &(reader->ctxt->sax), in xmlTextReaderSchemaValidateInternal()
4516 &(reader->ctxt->userData)); in xmlTextReaderSchemaValidateInternal()
4517 if (reader->xsdPlug == NULL) { in xmlTextReaderSchemaValidateInternal()
4518 reader->xsdValidCtxt = NULL; in xmlTextReaderSchemaValidateInternal()
4519 reader->xsdPreserveCtxt = 0; in xmlTextReaderSchemaValidateInternal()
4523 xmlSchemaValidateSetLocator(reader->xsdValidCtxt, in xmlTextReaderSchemaValidateInternal()
4525 (void *) reader); in xmlTextReaderSchemaValidateInternal()
4532 if (reader->errorFunc != NULL) { in xmlTextReaderSchemaValidateInternal()
4533 xmlSchemaSetValidErrors(reader->xsdValidCtxt, in xmlTextReaderSchemaValidateInternal()
4536 reader); in xmlTextReaderSchemaValidateInternal()
4538 if (reader->sErrorFunc != NULL) { in xmlTextReaderSchemaValidateInternal()
4539 xmlSchemaSetValidStructuredErrors(reader->xsdValidCtxt, in xmlTextReaderSchemaValidateInternal()
4541 reader); in xmlTextReaderSchemaValidateInternal()
4543 reader->xsdValidErrors = 0; in xmlTextReaderSchemaValidateInternal()
4544 reader->validate = XML_TEXTREADER_VALIDATE_XSD; in xmlTextReaderSchemaValidateInternal()
4562 xmlTextReaderSchemaValidateCtxt(xmlTextReaderPtr reader, in xmlTextReaderSchemaValidateCtxt() argument
4566 return(xmlTextReaderSchemaValidateInternal(reader, NULL, ctxt, options)); in xmlTextReaderSchemaValidateCtxt()
4582 xmlTextReaderSchemaValidate(xmlTextReaderPtr reader, const char *xsd) in xmlTextReaderSchemaValidate() argument
4584 return(xmlTextReaderSchemaValidateInternal(reader, xsd, NULL, 0)); in xmlTextReaderSchemaValidate()
4601 xmlTextReaderRelaxNGValidateCtxt(xmlTextReaderPtr reader, in xmlTextReaderRelaxNGValidateCtxt() argument
4605 return(xmlTextReaderRelaxNGValidateInternal(reader, NULL, ctxt, options)); in xmlTextReaderRelaxNGValidateCtxt()
4621 xmlTextReaderRelaxNGValidate(xmlTextReaderPtr reader, const char *rng) in xmlTextReaderRelaxNGValidate() argument
4623 return(xmlTextReaderRelaxNGValidateInternal(reader, rng, NULL, 0)); in xmlTextReaderRelaxNGValidate()
4640 xmlTextReaderIsNamespaceDecl(xmlTextReaderPtr reader) { in xmlTextReaderIsNamespaceDecl() argument
4642 if (reader == NULL) in xmlTextReaderIsNamespaceDecl()
4644 if (reader->node == NULL) in xmlTextReaderIsNamespaceDecl()
4646 if (reader->curnode != NULL) in xmlTextReaderIsNamespaceDecl()
4647 node = reader->curnode; in xmlTextReaderIsNamespaceDecl()
4649 node = reader->node; in xmlTextReaderIsNamespaceDecl()
4667 xmlTextReaderConstXmlVersion(xmlTextReaderPtr reader) { in xmlTextReaderConstXmlVersion() argument
4669 if (reader == NULL) in xmlTextReaderConstXmlVersion()
4671 if (reader->doc != NULL) in xmlTextReaderConstXmlVersion()
4672 doc = reader->doc; in xmlTextReaderConstXmlVersion()
4673 else if (reader->ctxt != NULL) in xmlTextReaderConstXmlVersion()
4674 doc = reader->ctxt->myDoc; in xmlTextReaderConstXmlVersion()
4695 xmlTextReaderStandalone(xmlTextReaderPtr reader) { in xmlTextReaderStandalone() argument
4697 if (reader == NULL) in xmlTextReaderStandalone()
4699 if (reader->doc != NULL) in xmlTextReaderStandalone()
4700 doc = reader->doc; in xmlTextReaderStandalone()
4701 else if (reader->ctxt != NULL) in xmlTextReaderStandalone()
4702 doc = reader->ctxt->myDoc; in xmlTextReaderStandalone()
4831 xmlTextReaderPtr reader = (xmlTextReaderPtr) ctx->_private; in xmlTextReaderGenericError() local
4834 if (reader->errorFunc) in xmlTextReaderGenericError()
4835 reader->errorFunc(reader->errorFuncArg, str, severity, in xmlTextReaderGenericError()
4846 xmlTextReaderPtr reader = (xmlTextReaderPtr) ctx->_private; in xmlTextReaderStructuredError() local
4848 if (error && reader->sErrorFunc) { in xmlTextReaderStructuredError()
4849 reader->sErrorFunc(reader->errorFuncArg, (xmlErrorPtr) error); in xmlTextReaderStructuredError()
4929 xmlTextReaderSetErrorHandler(xmlTextReaderPtr reader, in xmlTextReaderSetErrorHandler() argument
4933 reader->ctxt->sax->error = xmlTextReaderError; in xmlTextReaderSetErrorHandler()
4934 reader->ctxt->sax->serror = NULL; in xmlTextReaderSetErrorHandler()
4935 reader->ctxt->vctxt.error = xmlTextReaderValidityError; in xmlTextReaderSetErrorHandler()
4936 reader->ctxt->sax->warning = xmlTextReaderWarning; in xmlTextReaderSetErrorHandler()
4937 reader->ctxt->vctxt.warning = xmlTextReaderValidityWarning; in xmlTextReaderSetErrorHandler()
4938 reader->errorFunc = f; in xmlTextReaderSetErrorHandler()
4939 reader->sErrorFunc = NULL; in xmlTextReaderSetErrorHandler()
4940 reader->errorFuncArg = arg; in xmlTextReaderSetErrorHandler()
4942 if (reader->rngValidCtxt) { in xmlTextReaderSetErrorHandler()
4943 xmlRelaxNGSetValidErrors(reader->rngValidCtxt, in xmlTextReaderSetErrorHandler()
4946 reader); in xmlTextReaderSetErrorHandler()
4947 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, NULL, in xmlTextReaderSetErrorHandler()
4948 reader); in xmlTextReaderSetErrorHandler()
4950 if (reader->xsdValidCtxt) { in xmlTextReaderSetErrorHandler()
4951 xmlSchemaSetValidErrors(reader->xsdValidCtxt, in xmlTextReaderSetErrorHandler()
4954 reader); in xmlTextReaderSetErrorHandler()
4955 xmlSchemaSetValidStructuredErrors(reader->xsdValidCtxt, NULL, in xmlTextReaderSetErrorHandler()
4956 reader); in xmlTextReaderSetErrorHandler()
4961 reader->ctxt->sax->error = xmlParserError; in xmlTextReaderSetErrorHandler()
4962 reader->ctxt->vctxt.error = xmlParserValidityError; in xmlTextReaderSetErrorHandler()
4963 reader->ctxt->sax->warning = xmlParserWarning; in xmlTextReaderSetErrorHandler()
4964 reader->ctxt->vctxt.warning = xmlParserValidityWarning; in xmlTextReaderSetErrorHandler()
4965 reader->errorFunc = NULL; in xmlTextReaderSetErrorHandler()
4966 reader->sErrorFunc = NULL; in xmlTextReaderSetErrorHandler()
4967 reader->errorFuncArg = NULL; in xmlTextReaderSetErrorHandler()
4969 if (reader->rngValidCtxt) { in xmlTextReaderSetErrorHandler()
4970 xmlRelaxNGSetValidErrors(reader->rngValidCtxt, NULL, NULL, in xmlTextReaderSetErrorHandler()
4971 reader); in xmlTextReaderSetErrorHandler()
4972 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, NULL, in xmlTextReaderSetErrorHandler()
4973 reader); in xmlTextReaderSetErrorHandler()
4975 if (reader->xsdValidCtxt) { in xmlTextReaderSetErrorHandler()
4976 xmlSchemaSetValidErrors(reader->xsdValidCtxt, NULL, NULL, in xmlTextReaderSetErrorHandler()
4977 reader); in xmlTextReaderSetErrorHandler()
4978 xmlSchemaSetValidStructuredErrors(reader->xsdValidCtxt, NULL, in xmlTextReaderSetErrorHandler()
4979 reader); in xmlTextReaderSetErrorHandler()
4996 xmlTextReaderSetStructuredErrorHandler(xmlTextReaderPtr reader, in xmlTextReaderSetStructuredErrorHandler() argument
5000 reader->ctxt->sax->error = NULL; in xmlTextReaderSetStructuredErrorHandler()
5001 reader->ctxt->sax->serror = xmlTextReaderStructuredError; in xmlTextReaderSetStructuredErrorHandler()
5002 reader->ctxt->vctxt.error = xmlTextReaderValidityError; in xmlTextReaderSetStructuredErrorHandler()
5003 reader->ctxt->sax->warning = xmlTextReaderWarning; in xmlTextReaderSetStructuredErrorHandler()
5004 reader->ctxt->vctxt.warning = xmlTextReaderValidityWarning; in xmlTextReaderSetStructuredErrorHandler()
5005 reader->sErrorFunc = f; in xmlTextReaderSetStructuredErrorHandler()
5006 reader->errorFunc = NULL; in xmlTextReaderSetStructuredErrorHandler()
5007 reader->errorFuncArg = arg; in xmlTextReaderSetStructuredErrorHandler()
5009 if (reader->rngValidCtxt) { in xmlTextReaderSetStructuredErrorHandler()
5010 xmlRelaxNGSetValidErrors(reader->rngValidCtxt, NULL, NULL, in xmlTextReaderSetStructuredErrorHandler()
5011 reader); in xmlTextReaderSetStructuredErrorHandler()
5012 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, in xmlTextReaderSetStructuredErrorHandler()
5014 reader); in xmlTextReaderSetStructuredErrorHandler()
5016 if (reader->xsdValidCtxt) { in xmlTextReaderSetStructuredErrorHandler()
5017 xmlSchemaSetValidErrors(reader->xsdValidCtxt, NULL, NULL, in xmlTextReaderSetStructuredErrorHandler()
5018 reader); in xmlTextReaderSetStructuredErrorHandler()
5019 xmlSchemaSetValidStructuredErrors(reader->xsdValidCtxt, in xmlTextReaderSetStructuredErrorHandler()
5021 reader); in xmlTextReaderSetStructuredErrorHandler()
5026 reader->ctxt->sax->error = xmlParserError; in xmlTextReaderSetStructuredErrorHandler()
5027 reader->ctxt->sax->serror = NULL; in xmlTextReaderSetStructuredErrorHandler()
5028 reader->ctxt->vctxt.error = xmlParserValidityError; in xmlTextReaderSetStructuredErrorHandler()
5029 reader->ctxt->sax->warning = xmlParserWarning; in xmlTextReaderSetStructuredErrorHandler()
5030 reader->ctxt->vctxt.warning = xmlParserValidityWarning; in xmlTextReaderSetStructuredErrorHandler()
5031 reader->errorFunc = NULL; in xmlTextReaderSetStructuredErrorHandler()
5032 reader->sErrorFunc = NULL; in xmlTextReaderSetStructuredErrorHandler()
5033 reader->errorFuncArg = NULL; in xmlTextReaderSetStructuredErrorHandler()
5035 if (reader->rngValidCtxt) { in xmlTextReaderSetStructuredErrorHandler()
5036 xmlRelaxNGSetValidErrors(reader->rngValidCtxt, NULL, NULL, in xmlTextReaderSetStructuredErrorHandler()
5037 reader); in xmlTextReaderSetStructuredErrorHandler()
5038 xmlRelaxNGSetValidStructuredErrors(reader->rngValidCtxt, NULL, in xmlTextReaderSetStructuredErrorHandler()
5039 reader); in xmlTextReaderSetStructuredErrorHandler()
5041 if (reader->xsdValidCtxt) { in xmlTextReaderSetStructuredErrorHandler()
5042 xmlSchemaSetValidErrors(reader->xsdValidCtxt, NULL, NULL, in xmlTextReaderSetStructuredErrorHandler()
5043 reader); in xmlTextReaderSetStructuredErrorHandler()
5044 xmlSchemaSetValidStructuredErrors(reader->xsdValidCtxt, NULL, in xmlTextReaderSetStructuredErrorHandler()
5045 reader); in xmlTextReaderSetStructuredErrorHandler()
5060 xmlTextReaderIsValid(xmlTextReaderPtr reader) in xmlTextReaderIsValid() argument
5062 if (reader == NULL) in xmlTextReaderIsValid()
5065 if (reader->validate == XML_TEXTREADER_VALIDATE_RNG) in xmlTextReaderIsValid()
5066 return (reader->rngValidErrors == 0); in xmlTextReaderIsValid()
5067 if (reader->validate == XML_TEXTREADER_VALIDATE_XSD) in xmlTextReaderIsValid()
5068 return (reader->xsdValidErrors == 0); in xmlTextReaderIsValid()
5070 if ((reader->ctxt != NULL) && (reader->ctxt->validate == 1)) in xmlTextReaderIsValid()
5071 return (reader->ctxt->valid); in xmlTextReaderIsValid()
5084 xmlTextReaderGetErrorHandler(xmlTextReaderPtr reader, in xmlTextReaderGetErrorHandler() argument
5088 *f = reader->errorFunc; in xmlTextReaderGetErrorHandler()
5090 *arg = reader->errorFuncArg; in xmlTextReaderGetErrorHandler()
5112 xmlTextReaderSetup(xmlTextReaderPtr reader, in xmlTextReaderSetup() argument
5116 if (reader == NULL) { in xmlTextReaderSetup()
5128 reader->doc = NULL; in xmlTextReaderSetup()
5129 reader->entNr = 0; in xmlTextReaderSetup()
5130 reader->parserFlags = options; in xmlTextReaderSetup()
5131 reader->validate = XML_TEXTREADER_NOT_VALIDATE; in xmlTextReaderSetup()
5132 if ((input != NULL) && (reader->input != NULL) && in xmlTextReaderSetup()
5133 (reader->allocs & XML_TEXTREADER_INPUT)) { in xmlTextReaderSetup()
5134 xmlFreeParserInputBuffer(reader->input); in xmlTextReaderSetup()
5135 reader->input = NULL; in xmlTextReaderSetup()
5136 reader->allocs -= XML_TEXTREADER_INPUT; in xmlTextReaderSetup()
5139 reader->input = input; in xmlTextReaderSetup()
5140 reader->allocs |= XML_TEXTREADER_INPUT; in xmlTextReaderSetup()
5142 if (reader->buffer == NULL) in xmlTextReaderSetup()
5143 reader->buffer = xmlBufCreateSize(100); in xmlTextReaderSetup()
5144 if (reader->buffer == NULL) { in xmlTextReaderSetup()
5150 xmlBufSetAllocationScheme(reader->buffer, in xmlTextReaderSetup()
5152 if (reader->sax == NULL) in xmlTextReaderSetup()
5153 reader->sax = (xmlSAXHandler *) xmlMalloc(sizeof(xmlSAXHandler)); in xmlTextReaderSetup()
5154 if (reader->sax == NULL) { in xmlTextReaderSetup()
5159 xmlSAXVersion(reader->sax, 2); in xmlTextReaderSetup()
5160 reader->startElement = reader->sax->startElement; in xmlTextReaderSetup()
5161 reader->sax->startElement = xmlTextReaderStartElement; in xmlTextReaderSetup()
5162 reader->endElement = reader->sax->endElement; in xmlTextReaderSetup()
5163 reader->sax->endElement = xmlTextReaderEndElement; in xmlTextReaderSetup()
5165 if (reader->sax->initialized == XML_SAX2_MAGIC) { in xmlTextReaderSetup()
5167 reader->startElementNs = reader->sax->startElementNs; in xmlTextReaderSetup()
5168 reader->sax->startElementNs = xmlTextReaderStartElementNs; in xmlTextReaderSetup()
5169 reader->endElementNs = reader->sax->endElementNs; in xmlTextReaderSetup()
5170 reader->sax->endElementNs = xmlTextReaderEndElementNs; in xmlTextReaderSetup()
5173 reader->startElementNs = NULL; in xmlTextReaderSetup()
5174 reader->endElementNs = NULL; in xmlTextReaderSetup()
5177 reader->characters = reader->sax->characters; in xmlTextReaderSetup()
5178 reader->sax->characters = xmlTextReaderCharacters; in xmlTextReaderSetup()
5179 reader->sax->ignorableWhitespace = xmlTextReaderCharacters; in xmlTextReaderSetup()
5180 reader->cdataBlock = reader->sax->cdataBlock; in xmlTextReaderSetup()
5181 reader->sax->cdataBlock = xmlTextReaderCDataBlock; in xmlTextReaderSetup()
5183 reader->mode = XML_TEXTREADER_MODE_INITIAL; in xmlTextReaderSetup()
5184 reader->node = NULL; in xmlTextReaderSetup()
5185 reader->curnode = NULL; in xmlTextReaderSetup()
5187 if (xmlBufUse(reader->input->buffer) < 4) { in xmlTextReaderSetup()
5190 if (reader->ctxt == NULL) { in xmlTextReaderSetup()
5191 if (xmlBufUse(reader->input->buffer) >= 4) { in xmlTextReaderSetup()
5192 reader->ctxt = xmlCreatePushParserCtxt(reader->sax, NULL, in xmlTextReaderSetup()
5193 (const char *) xmlBufContent(reader->input->buffer), in xmlTextReaderSetup()
5195 reader->base = 0; in xmlTextReaderSetup()
5196 reader->cur = 4; in xmlTextReaderSetup()
5198 reader->ctxt = in xmlTextReaderSetup()
5199 xmlCreatePushParserCtxt(reader->sax, NULL, NULL, 0, URL); in xmlTextReaderSetup()
5200 reader->base = 0; in xmlTextReaderSetup()
5201 reader->cur = 0; in xmlTextReaderSetup()
5208 xmlCtxtReset(reader->ctxt); in xmlTextReaderSetup()
5211 inputStream = xmlNewInputStream(reader->ctxt); in xmlTextReaderSetup()
5225 inputPush(reader->ctxt, inputStream); in xmlTextReaderSetup()
5226 reader->cur = 0; in xmlTextReaderSetup()
5228 if (reader->ctxt == NULL) { in xmlTextReaderSetup()
5234 if (reader->dict != NULL) { in xmlTextReaderSetup()
5235 if (reader->ctxt->dict != NULL) { in xmlTextReaderSetup()
5236 if (reader->dict != reader->ctxt->dict) { in xmlTextReaderSetup()
5237 xmlDictFree(reader->dict); in xmlTextReaderSetup()
5238 reader->dict = reader->ctxt->dict; in xmlTextReaderSetup()
5241 reader->ctxt->dict = reader->dict; in xmlTextReaderSetup()
5244 if (reader->ctxt->dict == NULL) in xmlTextReaderSetup()
5245 reader->ctxt->dict = xmlDictCreate(); in xmlTextReaderSetup()
5246 reader->dict = reader->ctxt->dict; in xmlTextReaderSetup()
5248 reader->ctxt->_private = reader; in xmlTextReaderSetup()
5249 reader->ctxt->linenumbers = 1; in xmlTextReaderSetup()
5250 reader->ctxt->dictNames = 1; in xmlTextReaderSetup()
5254 reader->ctxt->docdict = 1; in xmlTextReaderSetup()
5255 reader->ctxt->parseMode = XML_PARSE_READER; in xmlTextReaderSetup()
5258 if (reader->xincctxt != NULL) { in xmlTextReaderSetup()
5259 xmlXIncludeFreeContext(reader->xincctxt); in xmlTextReaderSetup()
5260 reader->xincctxt = NULL; in xmlTextReaderSetup()
5263 reader->xinclude = 1; in xmlTextReaderSetup()
5264 reader->xinclude_name = xmlDictLookup(reader->dict, XINCLUDE_NODE, -1); in xmlTextReaderSetup()
5267 reader->xinclude = 0; in xmlTextReaderSetup()
5268 reader->in_xinclude = 0; in xmlTextReaderSetup()
5271 if (reader->patternTab == NULL) { in xmlTextReaderSetup()
5272 reader->patternNr = 0; in xmlTextReaderSetup()
5273 reader->patternMax = 0; in xmlTextReaderSetup()
5275 while (reader->patternNr > 0) { in xmlTextReaderSetup()
5276 reader->patternNr--; in xmlTextReaderSetup()
5277 if (reader->patternTab[reader->patternNr] != NULL) { in xmlTextReaderSetup()
5278 xmlFreePattern(reader->patternTab[reader->patternNr]); in xmlTextReaderSetup()
5279 reader->patternTab[reader->patternNr] = NULL; in xmlTextReaderSetup()
5285 reader->validate = XML_TEXTREADER_VALIDATE_DTD; in xmlTextReaderSetup()
5287 xmlCtxtUseOptions(reader->ctxt, options); in xmlTextReaderSetup()
5293 xmlSwitchToEncoding(reader->ctxt, hdlr); in xmlTextReaderSetup()
5295 if ((URL != NULL) && (reader->ctxt->input != NULL) && in xmlTextReaderSetup()
5296 (reader->ctxt->input->filename == NULL)) in xmlTextReaderSetup()
5297 reader->ctxt->input->filename = (char *) in xmlTextReaderSetup()
5300 reader->doc = NULL; in xmlTextReaderSetup()
5319 xmlTextReaderByteConsumed(xmlTextReaderPtr reader) { in xmlTextReaderByteConsumed() argument
5320 if ((reader == NULL) || (reader->ctxt == NULL)) in xmlTextReaderByteConsumed()
5322 return(xmlByteConsumed(reader->ctxt)); in xmlTextReaderByteConsumed()
5403 xmlTextReaderPtr reader; in xmlReaderForFile() local
5405 reader = xmlNewTextReaderFilename(filename); in xmlReaderForFile()
5406 if (reader == NULL) in xmlReaderForFile()
5408 xmlTextReaderSetup(reader, NULL, NULL, encoding, options); in xmlReaderForFile()
5409 return (reader); in xmlReaderForFile()
5429 xmlTextReaderPtr reader; in xmlReaderForMemory() local
5437 reader = xmlNewTextReader(buf, URL); in xmlReaderForMemory()
5438 if (reader == NULL) { in xmlReaderForMemory()
5442 reader->allocs |= XML_TEXTREADER_INPUT; in xmlReaderForMemory()
5443 xmlTextReaderSetup(reader, NULL, URL, encoding, options); in xmlReaderForMemory()
5444 return (reader); in xmlReaderForMemory()
5464 xmlTextReaderPtr reader; in xmlReaderForFd() local
5474 reader = xmlNewTextReader(input, URL); in xmlReaderForFd()
5475 if (reader == NULL) { in xmlReaderForFd()
5479 reader->allocs |= XML_TEXTREADER_INPUT; in xmlReaderForFd()
5480 xmlTextReaderSetup(reader, NULL, URL, encoding, options); in xmlReaderForFd()
5481 return (reader); in xmlReaderForFd()
5503 xmlTextReaderPtr reader; in xmlReaderForIO() local
5516 reader = xmlNewTextReader(input, URL); in xmlReaderForIO()
5517 if (reader == NULL) { in xmlReaderForIO()
5521 reader->allocs |= XML_TEXTREADER_INPUT; in xmlReaderForIO()
5522 xmlTextReaderSetup(reader, NULL, URL, encoding, options); in xmlReaderForIO()
5523 return (reader); in xmlReaderForIO()
5537 xmlReaderNewWalker(xmlTextReaderPtr reader, xmlDocPtr doc) in xmlReaderNewWalker() argument
5541 if (reader == NULL) in xmlReaderNewWalker()
5544 if (reader->input != NULL) { in xmlReaderNewWalker()
5545 xmlFreeParserInputBuffer(reader->input); in xmlReaderNewWalker()
5547 if (reader->ctxt != NULL) { in xmlReaderNewWalker()
5548 xmlCtxtReset(reader->ctxt); in xmlReaderNewWalker()
5551 reader->entNr = 0; in xmlReaderNewWalker()
5552 reader->input = NULL; in xmlReaderNewWalker()
5553 reader->mode = XML_TEXTREADER_MODE_INITIAL; in xmlReaderNewWalker()
5554 reader->node = NULL; in xmlReaderNewWalker()
5555 reader->curnode = NULL; in xmlReaderNewWalker()
5556 reader->base = 0; in xmlReaderNewWalker()
5557 reader->cur = 0; in xmlReaderNewWalker()
5558 reader->allocs = XML_TEXTREADER_CTXT; in xmlReaderNewWalker()
5559 reader->doc = doc; in xmlReaderNewWalker()
5560 reader->state = XML_TEXTREADER_START; in xmlReaderNewWalker()
5561 if (reader->dict == NULL) { in xmlReaderNewWalker()
5562 if ((reader->ctxt != NULL) && (reader->ctxt->dict != NULL)) in xmlReaderNewWalker()
5563 reader->dict = reader->ctxt->dict; in xmlReaderNewWalker()
5565 reader->dict = xmlDictCreate(); in xmlReaderNewWalker()
5585 xmlReaderNewDoc(xmlTextReaderPtr reader, const xmlChar * cur, in xmlReaderNewDoc() argument
5593 if (reader == NULL) in xmlReaderNewDoc()
5597 return (xmlReaderNewMemory(reader, (const char *)cur, len, in xmlReaderNewDoc()
5615 xmlReaderNewFile(xmlTextReaderPtr reader, const char *filename, in xmlReaderNewFile() argument
5622 if (reader == NULL) in xmlReaderNewFile()
5630 return (xmlTextReaderSetup(reader, input, filename, encoding, options)); in xmlReaderNewFile()
5649 xmlReaderNewMemory(xmlTextReaderPtr reader, const char *buffer, int size, in xmlReaderNewMemory() argument
5654 if (reader == NULL) in xmlReaderNewMemory()
5664 return (xmlTextReaderSetup(reader, input, URL, encoding, options)); in xmlReaderNewMemory()
5684 xmlReaderNewFd(xmlTextReaderPtr reader, int fd, in xmlReaderNewFd() argument
5691 if (reader == NULL) in xmlReaderNewFd()
5698 return (xmlTextReaderSetup(reader, input, URL, encoding, options)); in xmlReaderNewFd()
5719 xmlReaderNewIO(xmlTextReaderPtr reader, xmlInputReadCallback ioread, in xmlReaderNewIO() argument
5727 if (reader == NULL) in xmlReaderNewIO()
5737 return (xmlTextReaderSetup(reader, input, URL, encoding, options)); in xmlReaderNewIO()