facf0c92e0
Red Bear OS is a full fork. All sources must be available from git clone with zero network access. Removed gitignore rules that excluded fetched source trees under recipes/*/source/, local/recipes/kde/*/source/, local/recipes/qt/*/source/, and vendor source trees. Build artifacts (target/, build/, source.tar, *.o, *.so) remain excluded. 127291 files added — kernel, relibc, base, bootloader, pkgar, all KDE/Qt frameworks, mesa, wayland, DRM drivers, and every other recipe source.
518 lines
22 KiB
C
518 lines
22 KiB
C
/* libxml2 - Library for parsing XML documents
|
|
* Copyright (C) 2006-2019 Free Software Foundation, Inc.
|
|
*
|
|
* This file is not part of the GNU gettext program, but is used with
|
|
* GNU gettext.
|
|
*
|
|
* The original copyright notice is as follows:
|
|
*/
|
|
|
|
/*
|
|
* Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved.
|
|
*
|
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
* of this software and associated documentation files (the "Software"), to deal
|
|
* in the Software without restriction, including without limitation the rights
|
|
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
* copies of the Software, and to permit persons to whom the Software is fur-
|
|
* nished to do so, subject to the following conditions:
|
|
*
|
|
* The above copyright notice and this permission notice shall be included in
|
|
* all copies or substantial portions of the Software.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT-
|
|
* NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
* THE SOFTWARE.
|
|
*
|
|
* Author: Alfred Mickautsch <alfred@mickautsch.de>
|
|
*/
|
|
|
|
/*
|
|
* Summary: text writing API for XML
|
|
* Description: text writing API for XML
|
|
*/
|
|
|
|
#ifndef __XML_XMLWRITER_H__
|
|
#define __XML_XMLWRITER_H__
|
|
|
|
#include <libxml/xmlversion.h>
|
|
|
|
#ifdef LIBXML_WRITER_ENABLED
|
|
|
|
#include <stdarg.h>
|
|
#include <libxml/xmlIO.h>
|
|
#include <libxml/list.h>
|
|
#include <libxml/xmlstring.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct _xmlTextWriter xmlTextWriter;
|
|
typedef xmlTextWriter *xmlTextWriterPtr;
|
|
|
|
/*
|
|
* Constructors & Destructor
|
|
*/
|
|
XMLPUBFUN xmlTextWriterPtr XMLCALL
|
|
xmlNewTextWriter(xmlOutputBufferPtr out);
|
|
XMLPUBFUN xmlTextWriterPtr XMLCALL
|
|
xmlNewTextWriterFilename(const char *uri, int compression);
|
|
XMLPUBFUN xmlTextWriterPtr XMLCALL
|
|
xmlNewTextWriterMemory(xmlBufferPtr buf, int compression);
|
|
XMLPUBFUN xmlTextWriterPtr XMLCALL
|
|
xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt, int compression);
|
|
XMLPUBFUN xmlTextWriterPtr XMLCALL
|
|
xmlNewTextWriterDoc(xmlDocPtr * doc, int compression);
|
|
XMLPUBFUN xmlTextWriterPtr XMLCALL
|
|
xmlNewTextWriterTree(xmlDocPtr doc, xmlNodePtr node,
|
|
int compression);
|
|
XMLPUBFUN void XMLCALL xmlFreeTextWriter(xmlTextWriterPtr writer);
|
|
|
|
/*
|
|
* Functions
|
|
*/
|
|
|
|
|
|
/*
|
|
* Document
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartDocument(xmlTextWriterPtr writer,
|
|
const char *version,
|
|
const char *encoding,
|
|
const char *standalone);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndDocument(xmlTextWriterPtr
|
|
writer);
|
|
|
|
/*
|
|
* Comments
|
|
*/
|
|
XMLPUBFUN int XMLCALL xmlTextWriterStartComment(xmlTextWriterPtr
|
|
writer);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndComment(xmlTextWriterPtr writer);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatComment(xmlTextWriterPtr writer,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(2,3);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(2,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteComment(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
content);
|
|
|
|
/*
|
|
* Elements
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartElement(xmlTextWriterPtr writer,
|
|
const xmlChar * name);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterStartElementNS(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
prefix,
|
|
const xmlChar * name,
|
|
const xmlChar *
|
|
namespaceURI);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndElement(xmlTextWriterPtr writer);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterFullEndElement(xmlTextWriterPtr
|
|
writer);
|
|
|
|
/*
|
|
* Elements conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatElement(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(3,4);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(3,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteElement(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar * name,
|
|
const xmlChar *
|
|
content);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatElementNS(xmlTextWriterPtr writer,
|
|
const xmlChar * prefix,
|
|
const xmlChar * name,
|
|
const xmlChar * namespaceURI,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(5,6);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer,
|
|
const xmlChar * prefix,
|
|
const xmlChar * name,
|
|
const xmlChar * namespaceURI,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(5,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteElementNS(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
prefix,
|
|
const xmlChar * name,
|
|
const xmlChar *
|
|
namespaceURI,
|
|
const xmlChar *
|
|
content);
|
|
|
|
/*
|
|
* Text
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatRaw(xmlTextWriterPtr writer,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(2,3);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatRaw(xmlTextWriterPtr writer,
|
|
const char *format, va_list argptr)
|
|
LIBXML_ATTR_FORMAT(2,0);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteRawLen(xmlTextWriterPtr writer,
|
|
const xmlChar * content, int len);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteRaw(xmlTextWriterPtr writer,
|
|
const xmlChar * content);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatString(xmlTextWriterPtr
|
|
writer,
|
|
const char
|
|
*format, ...)
|
|
LIBXML_ATTR_FORMAT(2,3);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatString(xmlTextWriterPtr
|
|
writer,
|
|
const char
|
|
*format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(2,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteString(xmlTextWriterPtr writer,
|
|
const xmlChar *
|
|
content);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteBase64(xmlTextWriterPtr writer,
|
|
const char *data,
|
|
int start, int len);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteBinHex(xmlTextWriterPtr writer,
|
|
const char *data,
|
|
int start, int len);
|
|
|
|
/*
|
|
* Attributes
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartAttribute(xmlTextWriterPtr writer,
|
|
const xmlChar * name);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterStartAttributeNS(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
prefix,
|
|
const xmlChar *
|
|
name,
|
|
const xmlChar *
|
|
namespaceURI);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndAttribute(xmlTextWriterPtr
|
|
writer);
|
|
|
|
/*
|
|
* Attributes conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(3,4);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(3,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteAttribute(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar * name,
|
|
const xmlChar *
|
|
content);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatAttributeNS(xmlTextWriterPtr writer,
|
|
const xmlChar * prefix,
|
|
const xmlChar * name,
|
|
const xmlChar * namespaceURI,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(5,6);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer,
|
|
const xmlChar * prefix,
|
|
const xmlChar * name,
|
|
const xmlChar * namespaceURI,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(5,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteAttributeNS(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
prefix,
|
|
const xmlChar *
|
|
name,
|
|
const xmlChar *
|
|
namespaceURI,
|
|
const xmlChar *
|
|
content);
|
|
|
|
/*
|
|
* PI's
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartPI(xmlTextWriterPtr writer,
|
|
const xmlChar * target);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndPI(xmlTextWriterPtr writer);
|
|
|
|
/*
|
|
* PI conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatPI(xmlTextWriterPtr writer,
|
|
const xmlChar * target,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(3,4);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatPI(xmlTextWriterPtr writer,
|
|
const xmlChar * target,
|
|
const char *format, va_list argptr)
|
|
LIBXML_ATTR_FORMAT(3,0);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWritePI(xmlTextWriterPtr writer,
|
|
const xmlChar * target,
|
|
const xmlChar * content);
|
|
|
|
/**
|
|
* xmlTextWriterWriteProcessingInstruction:
|
|
*
|
|
* This macro maps to xmlTextWriterWritePI
|
|
*/
|
|
#define xmlTextWriterWriteProcessingInstruction xmlTextWriterWritePI
|
|
|
|
/*
|
|
* CDATA
|
|
*/
|
|
XMLPUBFUN int XMLCALL xmlTextWriterStartCDATA(xmlTextWriterPtr writer);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndCDATA(xmlTextWriterPtr writer);
|
|
|
|
/*
|
|
* CDATA conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatCDATA(xmlTextWriterPtr writer,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(2,3);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatCDATA(xmlTextWriterPtr writer,
|
|
const char *format, va_list argptr)
|
|
LIBXML_ATTR_FORMAT(2,0);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteCDATA(xmlTextWriterPtr writer,
|
|
const xmlChar * content);
|
|
|
|
/*
|
|
* DTD
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartDTD(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndDTD(xmlTextWriterPtr writer);
|
|
|
|
/*
|
|
* DTD conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatDTD(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(5,6);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatDTD(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid,
|
|
const char *format, va_list argptr)
|
|
LIBXML_ATTR_FORMAT(5,0);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteDTD(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid,
|
|
const xmlChar * subset);
|
|
|
|
/**
|
|
* xmlTextWriterWriteDocType:
|
|
*
|
|
* this macro maps to xmlTextWriterWriteDTD
|
|
*/
|
|
#define xmlTextWriterWriteDocType xmlTextWriterWriteDTD
|
|
|
|
/*
|
|
* DTD element definition
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartDTDElement(xmlTextWriterPtr writer,
|
|
const xmlChar * name);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndDTDElement(xmlTextWriterPtr
|
|
writer);
|
|
|
|
/*
|
|
* DTD element definition conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(3,4);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(3,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDElement(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
name,
|
|
const xmlChar *
|
|
content);
|
|
|
|
/*
|
|
* DTD attribute list definition
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartDTDAttlist(xmlTextWriterPtr writer,
|
|
const xmlChar * name);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndDTDAttlist(xmlTextWriterPtr
|
|
writer);
|
|
|
|
/*
|
|
* DTD attribute list definition conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(3,4);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(3,0);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDAttlist(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar *
|
|
name,
|
|
const xmlChar *
|
|
content);
|
|
|
|
/*
|
|
* DTD entity definition
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterStartDTDEntity(xmlTextWriterPtr writer,
|
|
int pe, const xmlChar * name);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterEndDTDEntity(xmlTextWriterPtr
|
|
writer);
|
|
|
|
/*
|
|
* DTD entity definition conveniency functions
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer,
|
|
int pe,
|
|
const xmlChar * name,
|
|
const char *format, ...)
|
|
LIBXML_ATTR_FORMAT(4,5);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer,
|
|
int pe,
|
|
const xmlChar * name,
|
|
const char *format,
|
|
va_list argptr)
|
|
LIBXML_ATTR_FORMAT(4,0);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer,
|
|
int pe,
|
|
const xmlChar * name,
|
|
const xmlChar * content);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteDTDExternalEntity(xmlTextWriterPtr writer,
|
|
int pe,
|
|
const xmlChar * name,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid,
|
|
const xmlChar * ndataid);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteDTDExternalEntityContents(xmlTextWriterPtr
|
|
writer,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid,
|
|
const xmlChar *
|
|
ndataid);
|
|
XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDEntity(xmlTextWriterPtr
|
|
writer, int pe,
|
|
const xmlChar * name,
|
|
const xmlChar *
|
|
pubid,
|
|
const xmlChar *
|
|
sysid,
|
|
const xmlChar *
|
|
ndataid,
|
|
const xmlChar *
|
|
content);
|
|
|
|
/*
|
|
* DTD notation definition
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterWriteDTDNotation(xmlTextWriterPtr writer,
|
|
const xmlChar * name,
|
|
const xmlChar * pubid,
|
|
const xmlChar * sysid);
|
|
|
|
/*
|
|
* Indentation
|
|
*/
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterSetIndent(xmlTextWriterPtr writer, int indent);
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterSetIndentString(xmlTextWriterPtr writer,
|
|
const xmlChar * str);
|
|
|
|
XMLPUBFUN int XMLCALL
|
|
xmlTextWriterSetQuoteChar(xmlTextWriterPtr writer, xmlChar quotechar);
|
|
|
|
|
|
/*
|
|
* misc
|
|
*/
|
|
XMLPUBFUN int XMLCALL xmlTextWriterFlush(xmlTextWriterPtr writer);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* LIBXML_WRITER_ENABLED */
|
|
|
|
#endif /* __XML_XMLWRITER_H__ */
|