mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-10-31 21:50:33 +03:00
Time to work on helping the Gnome Doc project, first step is reintegrating
the SGML DocBook parser in libxml2 distrib: - DOCBparser.c DOCBparser.h testDocbook.c configure.in Makefile.am xmlversion.h.in: started (re)integrating the DocBook SGML parser. - SAX.[ch]: cleanup and updates for DocBook - debugXML.c parser.h tree.[ch] valid.c xpath.c: small macro or ex SGML identifier changes - valid.c: removed a static unused function. Daniel
This commit is contained in:
73
DOCBparser.h
Normal file
73
DOCBparser.h
Normal file
@@ -0,0 +1,73 @@
|
||||
/*
|
||||
* SGMLparser.h : interface for a DocBook SGML non-verifying parser
|
||||
*
|
||||
* See Copyright for the status of this software.
|
||||
*
|
||||
* Daniel.Veillard@w3.org
|
||||
*/
|
||||
|
||||
#ifndef __DOCB_PARSER_H__
|
||||
#define __DOCB_PARSER_H__
|
||||
#include <parser.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Most of the back-end structures from XML and SGML are shared
|
||||
*/
|
||||
typedef xmlParserCtxt docbParserCtxt;
|
||||
typedef xmlParserCtxtPtr docbParserCtxtPtr;
|
||||
typedef xmlParserNodeInfo docbParserNodeInfo;
|
||||
typedef xmlSAXHandler docbSAXHandler;
|
||||
typedef xmlSAXHandlerPtr docbSAXHandlerPtr;
|
||||
typedef xmlParserInput docbParserInput;
|
||||
typedef xmlParserInputPtr docbParserInputPtr;
|
||||
typedef xmlDocPtr docbDocPtr;
|
||||
typedef xmlNodePtr docbNodePtr;
|
||||
|
||||
/*
|
||||
* There is only few public functions.
|
||||
*/
|
||||
int docbEncodeEntities(unsigned char* out,
|
||||
int *outlen,
|
||||
const unsigned char* in,
|
||||
int *inlen, int quoteChar);
|
||||
|
||||
docbDocPtr docbSAXParseDoc (xmlChar *cur,
|
||||
const char *encoding,
|
||||
docbSAXHandlerPtr sax,
|
||||
void *userData);
|
||||
docbDocPtr docbParseDoc (xmlChar *cur,
|
||||
const char *encoding);
|
||||
docbDocPtr docbSAXParseFile(const char *filename,
|
||||
const char *encoding,
|
||||
docbSAXHandlerPtr sax,
|
||||
void *userData);
|
||||
docbDocPtr docbParseFile (const char *filename,
|
||||
const char *encoding);
|
||||
|
||||
/**
|
||||
* Interfaces for the Push mode
|
||||
*/
|
||||
void docbFreeParserCtxt (docbParserCtxtPtr ctxt);
|
||||
docbParserCtxtPtr docbCreatePushParserCtxt(docbSAXHandlerPtr sax,
|
||||
void *user_data,
|
||||
const char *chunk,
|
||||
int size,
|
||||
const char *filename,
|
||||
xmlCharEncoding enc);
|
||||
int docbParseChunk (docbParserCtxtPtr ctxt,
|
||||
const char *chunk,
|
||||
int size,
|
||||
int terminate);
|
||||
docbParserCtxtPtr docbCreateFileParserCtxt(const char *filename,
|
||||
const char *encoding);
|
||||
int docbParseDocument (docbParserCtxtPtr ctxt);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __DOCB_PARSER_H__ */
|
||||
Reference in New Issue
Block a user