| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- /**
- * @file
- *
- * @brief XML/HTML serializer
- *
- * API to save documents or subtrees of documents.
- *
- * @copyright See Copyright for the status of this software.
- *
- * @author Daniel Veillard
- */
- #ifndef __XML_XMLSAVE_H__
- #define __XML_XMLSAVE_H__
- #include <libxml/xmlversion.h>
- #include <libxml/tree.h>
- #include <libxml/encoding.h>
- #include <libxml/xmlIO.h>
- #ifdef LIBXML_OUTPUT_ENABLED
- #ifdef __cplusplus
- extern "C" {
- #endif
- /**
- * This is the set of XML save options that can be passed down
- * to the #xmlSaveToFd and similar calls.
- */
- typedef enum {
- /**
- * Format output. This adds newlines and enables indenting
- * by default.
- */
- XML_SAVE_FORMAT = 1<<0,
- /**
- * Don't emit an XML declaration.
- */
- XML_SAVE_NO_DECL = 1<<1,
- /**
- * Don't emit empty tags.
- */
- XML_SAVE_NO_EMPTY = 1<<2,
- /**
- * Don't serialize as XHTML.
- */
- XML_SAVE_NO_XHTML = 1<<3,
- /**
- * Always serialize as XHTML.
- */
- XML_SAVE_XHTML = 1<<4,
- /**
- * Serialize HTML documents as XML.
- */
- XML_SAVE_AS_XML = 1<<5,
- /**
- * Serialize XML documents as HTML.
- */
- XML_SAVE_AS_HTML = 1<<6,
- /**
- * Format with non-significant whitespace.
- * TODO: What does this mean?
- */
- XML_SAVE_WSNONSIG = 1<<7,
- /**
- * Always emit empty tags. This is the default unless the
- * deprecated thread-local setting xmlSaveNoEmptyTags is
- * set to 1.
- *
- * @since 2.14
- */
- XML_SAVE_EMPTY = 1<<8,
- /**
- * Don't indent output when formatting.
- *
- * @since 2.14
- */
- XML_SAVE_NO_INDENT = 1<<9,
- /**
- * Always indent output when formatting. This is the default
- * unless the deprecated thread-local setting
- * xmlIndentTreeOutput is set to 0.
- *
- * @since 2.14
- */
- XML_SAVE_INDENT = 1<<10
- } xmlSaveOption;
- /** XML and HTML serializer */
- typedef struct _xmlSaveCtxt xmlSaveCtxt;
- typedef xmlSaveCtxt *xmlSaveCtxtPtr;
- XMLPUBFUN xmlSaveCtxt *
- xmlSaveToFd (int fd,
- const char *encoding,
- int options);
- XMLPUBFUN xmlSaveCtxt *
- xmlSaveToFilename (const char *filename,
- const char *encoding,
- int options);
- XMLPUBFUN xmlSaveCtxt *
- xmlSaveToBuffer (xmlBuffer *buffer,
- const char *encoding,
- int options);
- XMLPUBFUN xmlSaveCtxt *
- xmlSaveToIO (xmlOutputWriteCallback iowrite,
- xmlOutputCloseCallback ioclose,
- void *ioctx,
- const char *encoding,
- int options);
- XMLPUBFUN long
- xmlSaveDoc (xmlSaveCtxt *ctxt,
- xmlDoc *doc);
- XMLPUBFUN long
- xmlSaveTree (xmlSaveCtxt *ctxt,
- xmlNode *node);
- XMLPUBFUN int
- xmlSaveFlush (xmlSaveCtxt *ctxt);
- XMLPUBFUN int
- xmlSaveClose (xmlSaveCtxt *ctxt);
- XMLPUBFUN xmlParserErrors
- xmlSaveFinish (xmlSaveCtxt *ctxt);
- XMLPUBFUN int
- xmlSaveSetIndentString (xmlSaveCtxt *ctxt,
- const char *indent);
- XML_DEPRECATED
- XMLPUBFUN int
- xmlSaveSetEscape (xmlSaveCtxt *ctxt,
- xmlCharEncodingOutputFunc escape);
- XML_DEPRECATED
- XMLPUBFUN int
- xmlSaveSetAttrEscape (xmlSaveCtxt *ctxt,
- xmlCharEncodingOutputFunc escape);
- XML_DEPRECATED
- XMLPUBFUN int
- xmlThrDefIndentTreeOutput(int v);
- XML_DEPRECATED
- XMLPUBFUN const char *
- xmlThrDefTreeIndentString(const char * v);
- XML_DEPRECATED
- XMLPUBFUN int
- xmlThrDefSaveNoEmptyTags(int v);
- #ifdef __cplusplus
- }
- #endif
- #endif /* LIBXML_OUTPUT_ENABLED */
- #endif /* __XML_XMLSAVE_H__ */
|