1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-10-21 14:53:44 +03:00

Adding a new set of APIs based on the C# TextXmlReader API but converted

* Makefile.am xmlreader.c include/libxml/Makefile.am
  include/libxml/xmlreader.h:  Adding a new set of APIs based on
  the C# TextXmlReader API but converted to C. Allow to parse
  in constant memory usage, far simpler to program and explain
  than the SAX like APIs, unfinished but working.
* testReader.c: test program
Daniel
This commit is contained in:
Daniel Veillard
2002-12-09 14:13:43 +00:00
parent 70a296cb8b
commit e1ca50330b
11 changed files with 997 additions and 8 deletions

View File

@@ -0,0 +1,56 @@
/*
* xmlreader.h : Interfaces, constants and types of the XML streaming API.
*
* See Copyright for the status of this software.
*
* daniel@veillard.com
*/
#ifndef __XML_XMLREADER_H__
#define __XML_XMLREADER_H__
#include <libxml/tree.h>
#include <libxml/xmlIO.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct _xmlTextReader xmlTextReader;
typedef xmlTextReader *xmlTextReaderPtr;
/*
* Constructors & Destructor
*/
xmlTextReaderPtr xmlNewTextReader (xmlParserInputBufferPtr input);
xmlTextReaderPtr xmlNewTextReaderFilename(const char *URI);
void xmlFreeTextReader (xmlTextReaderPtr reader);
/*
* Iterators
*/
int xmlTextReaderRead (xmlTextReaderPtr reader);
/*
* Attributes of the node
*/
int xmlTextReaderAttributeCount(xmlTextReaderPtr reader);
xmlChar * xmlTextReaderBaseUri (xmlTextReaderPtr reader);
int xmlTextReaderDepth (xmlTextReaderPtr reader);
int xmlTextReaderHasAttributes(xmlTextReaderPtr reader);
int xmlTextReaderHasValue(xmlTextReaderPtr reader);
int xmlTextReaderIsDefault (xmlTextReaderPtr reader);
int xmlTextReaderIsEmptyElement(xmlTextReaderPtr reader);
xmlChar * xmlTextReaderLocalName (xmlTextReaderPtr reader);
xmlChar * xmlTextReaderName (xmlTextReaderPtr reader);
xmlChar * xmlTextReaderNamespaceUri(xmlTextReaderPtr reader);
int xmlTextReaderNodeType (xmlTextReaderPtr reader);
xmlChar * xmlTextReaderPrefix (xmlTextReaderPtr reader);
int xmlTextReaderQuoteChar (xmlTextReaderPtr reader);
xmlChar * xmlTextReaderValue (xmlTextReaderPtr reader);
xmlChar * xmlTextReaderXmlLang (xmlTextReaderPtr reader);
#ifdef __cplusplus
}
#endif
#endif /* __XML_XMLREADER_H__ */