TODO: remove xmlEncodeEntities, once we are not afraid of breaking binary compatibility People must migrate their code to xmlEncodeEntitiesReentrant ! This routine will issue a warning when encountered.
Do a global encoding of a string, replacing the predefined entities and non ASCII values with their entities and CharRef counterparts. Contrary to xmlEncodeEntities, this routine is reentrant, and result must be deallocated.
xmlChar * xmlEncodeSpecialChars (xmlDocPtr doc,
const xmlChar * input)
+doc: | the document containing the string |
input: | A string to convert to XML. |
Returns: | A newly allocated string with the substitution done. |
Function: xmlEncodeSpecialChars
xmlChar * xmlEncodeSpecialChars (const xmlDoc * doc,
const xmlChar * input)
Do a global encoding of a string, replacing the predefined entities this routine is reentrant, and result must be deallocated.
doc: | the document containing the string |
input: | A string to convert to XML. |
Returns: | A newly allocated string with the substitution done. |
Function: xmlFreeEntitiesTable
void xmlFreeEntitiesTable (xmlEntitiesTablePtr table)
Deallocate the memory used by an entities hash table.
-Function: xmlGetDocEntity
xmlEntityPtr xmlGetDocEntity (xmlDocPtr doc,
const xmlChar * name)
+Function: xmlGetDocEntity
xmlEntityPtr xmlGetDocEntity (const xmlDoc * doc,
const xmlChar * name)
Do an entity lookup in the document entity hash table and
doc: | the document referencing the entity |
name: | the entity name |
Returns: | the corresponding entity, otherwise a lookup is done in the predefined entities too. Returns A pointer to the entity structure or NULL if not found. |
Function: xmlGetDtdEntity
xmlEntityPtr xmlGetDtdEntity (xmlDocPtr doc,
const xmlChar * name)
Do an entity lookup in the DTD entity hash table and
diff --git a/doc/html/libxml-tree.html b/doc/html/libxml-tree.html
index 5d932cbe..e2081cc5 100644
--- a/doc/html/libxml-tree.html
+++ b/doc/html/libxml-tree.html
@@ -70,9 +70,9 @@ The content of this structure is not made public by the API.
xmlNodePtr xmlAddPrevSibling (xmlNodePtr cur,
xmlNodePtr elem)
xmlNodePtr xmlAddSibling (xmlNodePtr cur,
xmlNodePtr elem)
void xmlAttrSerializeTxtContent (xmlBufferPtr buf,
xmlDocPtr doc,
xmlAttrPtr attr,
const xmlChar * string)
-xmlChar * xmlBufContent (const xmlBufPtr buf)
-xmlChar * xmlBufEnd (const xmlBufPtr buf)
-int xmlBufGetNodeContent (xmlBufPtr buf,
xmlNodePtr cur)
+xmlChar * xmlBufContent (const xmlBuf * buf)
+xmlChar * xmlBufEnd (xmlBufPtr buf)
+int xmlBufGetNodeContent (xmlBufPtr buf,
const xmlNode * cur)
size_t xmlBufNodeDump (xmlBufPtr buf,
xmlDocPtr doc,
xmlNodePtr cur,
int level,
int format)
size_t xmlBufShrink (xmlBufPtr buf,
size_t len)
size_t xmlBufUse (const xmlBufPtr buf)
@@ -80,7 +80,7 @@ The content of this structure is not made public by the API.
int xmlBufferAddHead (xmlBufferPtr buf,
const xmlChar * str,
int len)
int xmlBufferCCat (xmlBufferPtr buf,
const char * str)
int xmlBufferCat (xmlBufferPtr buf,
const xmlChar * str)
-const xmlChar * xmlBufferContent (const xmlBufferPtr buf)
+const xmlChar * xmlBufferContent (const xmlBuffer * buf)
xmlBufferPtr xmlBufferCreate (void)
xmlBufferPtr xmlBufferCreateSize (size_t size)
xmlBufferPtr xmlBufferCreateStatic (void * mem,
size_t size)
@@ -89,7 +89,7 @@ The content of this structure is not made public by the API.
void xmlBufferEmpty (xmlBufferPtr buf)
void xmlBufferFree (xmlBufferPtr buf)
int xmlBufferGrow (xmlBufferPtr buf,
unsigned int len)
-int xmlBufferLength (const xmlBufferPtr buf)
+int xmlBufferLength (const xmlBuffer * buf)
int xmlBufferResize (xmlBufferPtr buf,
unsigned int size)
void xmlBufferSetAllocationScheme (xmlBufferPtr buf,
xmlBufferAllocationScheme scheme)
int xmlBufferShrink (xmlBufferPtr buf,
unsigned int len)
@@ -102,8 +102,8 @@ The content of this structure is not made public by the API.
xmlDtdPtr xmlCopyDtd (xmlDtdPtr dtd)
xmlNsPtr xmlCopyNamespace (xmlNsPtr cur)
xmlNsPtr xmlCopyNamespaceList (xmlNsPtr cur)
-xmlNodePtr xmlCopyNode (const xmlNodePtr node,
int extended)
-xmlNodePtr xmlCopyNodeList (const xmlNodePtr node)
+xmlNodePtr xmlCopyNode (xmlNodePtr node,
int extended)
+xmlNodePtr xmlCopyNodeList (xmlNodePtr node)
xmlAttrPtr xmlCopyProp (xmlNodePtr target,
xmlAttrPtr cur)
xmlAttrPtr xmlCopyPropList (xmlNodePtr target,
xmlAttrPtr cur)
xmlDtdPtr xmlCreateIntSubset (xmlDocPtr doc,
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
@@ -116,15 +116,15 @@ The content of this structure is not made public by the API.
xmlDOMWrapCtxtPtr xmlDOMWrapNewCtxt (void)
int xmlDOMWrapReconcileNamespaces (xmlDOMWrapCtxtPtr ctxt,
xmlNodePtr elem,
int options)
int xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt,
xmlDocPtr doc,
xmlNodePtr node,
int options)
-xmlNodePtr xmlDocCopyNode (const xmlNodePtr node,
xmlDocPtr doc,
int extended)
-xmlNodePtr xmlDocCopyNodeList (xmlDocPtr doc,
const xmlNodePtr node)
+xmlNodePtr xmlDocCopyNode (xmlNodePtr node,
xmlDocPtr doc,
int extended)
+xmlNodePtr xmlDocCopyNodeList (xmlDocPtr doc,
xmlNodePtr node)
int xmlDocDump (FILE * f,
xmlDocPtr cur)
void xmlDocDumpFormatMemory (xmlDocPtr cur,
xmlChar ** mem,
int * size,
int format)
void xmlDocDumpFormatMemoryEnc (xmlDocPtr out_doc,
xmlChar ** doc_txt_ptr,
int * doc_txt_len,
const char * txt_encoding,
int format)
void xmlDocDumpMemory (xmlDocPtr cur,
xmlChar ** mem,
int * size)
void xmlDocDumpMemoryEnc (xmlDocPtr out_doc,
xmlChar ** doc_txt_ptr,
int * doc_txt_len,
const char * txt_encoding)
int xmlDocFormatDump (FILE * f,
xmlDocPtr cur,
int format)
-xmlNodePtr xmlDocGetRootElement (xmlDocPtr doc)
+xmlNodePtr xmlDocGetRootElement (const xmlDoc * doc)
xmlNodePtr xmlDocSetRootElement (xmlDocPtr doc,
xmlNodePtr root)
void xmlElemDump (FILE * f,
xmlDocPtr doc,
xmlNodePtr cur)
xmlNodePtr xmlFirstElementChild (xmlNodePtr parent)
@@ -138,18 +138,18 @@ The content of this structure is not made public by the API.
void xmlFreePropList (xmlAttrPtr cur)
xmlBufferAllocationScheme xmlGetBufferAllocationScheme (void)
int xmlGetCompressMode (void)
-int xmlGetDocCompressMode (xmlDocPtr doc)
-xmlDtdPtr xmlGetIntSubset (xmlDocPtr doc)
-xmlNodePtr xmlGetLastChild (xmlNodePtr parent)
-long xmlGetLineNo (xmlNodePtr node)
-xmlChar * xmlGetNoNsProp (xmlNodePtr node,
const xmlChar * name)
-xmlChar * xmlGetNodePath (xmlNodePtr node)
-xmlNsPtr * xmlGetNsList (xmlDocPtr doc,
xmlNodePtr node)
-xmlChar * xmlGetNsProp (xmlNodePtr node,
const xmlChar * name,
const xmlChar * nameSpace)
-xmlChar * xmlGetProp (xmlNodePtr node,
const xmlChar * name)
-xmlAttrPtr xmlHasNsProp (xmlNodePtr node,
const xmlChar * name,
const xmlChar * nameSpace)
-xmlAttrPtr xmlHasProp (xmlNodePtr node,
const xmlChar * name)
-int xmlIsBlankNode (xmlNodePtr node)
+int xmlGetDocCompressMode (const xmlDoc * doc)
+xmlDtdPtr xmlGetIntSubset (const xmlDoc * doc)
+xmlNodePtr xmlGetLastChild (const xmlNode * parent)
+long xmlGetLineNo (const xmlNode * node)
+xmlChar * xmlGetNoNsProp (const xmlNode * node,
const xmlChar * name)
+xmlChar * xmlGetNodePath (const xmlNode * node)
+xmlNsPtr * xmlGetNsList (const xmlDoc * doc,
const xmlNode * node)
+xmlChar * xmlGetNsProp (const xmlNode * node,
const xmlChar * name,
const xmlChar * nameSpace)
+xmlChar * xmlGetProp (const xmlNode * node,
const xmlChar * name)
+xmlAttrPtr xmlHasNsProp (const xmlNode * node,
const xmlChar * name,
const xmlChar * nameSpace)
+xmlAttrPtr xmlHasProp (const xmlNode * node,
const xmlChar * name)
+int xmlIsBlankNode (const xmlNode * node)
int xmlIsXHTML (const xmlChar * systemID,
const xmlChar * publicID)
xmlNodePtr xmlLastElementChild (xmlNodePtr parent)
xmlNodePtr xmlNewCDataBlock (xmlDocPtr doc,
const xmlChar * content,
int len)
@@ -164,7 +164,7 @@ The content of this structure is not made public by the API.
xmlNodePtr xmlNewDocPI (xmlDocPtr doc,
const xmlChar * name,
const xmlChar * content)
xmlAttrPtr xmlNewDocProp (xmlDocPtr doc,
const xmlChar * name,
const xmlChar * value)
xmlNodePtr xmlNewDocRawNode (xmlDocPtr doc,
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
-xmlNodePtr xmlNewDocText (xmlDocPtr doc,
const xmlChar * content)
+xmlNodePtr xmlNewDocText (const xmlDoc * doc,
const xmlChar * content)
xmlNodePtr xmlNewDocTextLen (xmlDocPtr doc,
const xmlChar * content,
int len)
xmlDtdPtr xmlNewDtd (xmlDocPtr doc,
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
xmlNsPtr xmlNewGlobalNs (xmlDocPtr doc,
const xmlChar * href,
const xmlChar * prefix)
@@ -175,23 +175,23 @@ The content of this structure is not made public by the API.
xmlAttrPtr xmlNewNsPropEatName (xmlNodePtr node,
xmlNsPtr ns,
xmlChar * name,
const xmlChar * value)
xmlNodePtr xmlNewPI (const xmlChar * name,
const xmlChar * content)
xmlAttrPtr xmlNewProp (xmlNodePtr node,
const xmlChar * name,
const xmlChar * value)
-xmlNodePtr xmlNewReference (xmlDocPtr doc,
const xmlChar * name)
+xmlNodePtr xmlNewReference (const xmlDoc * doc,
const xmlChar * name)
xmlNodePtr xmlNewText (const xmlChar * content)
xmlNodePtr xmlNewTextChild (xmlNodePtr parent,
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
xmlNodePtr xmlNewTextLen (const xmlChar * content,
int len)
xmlNodePtr xmlNextElementSibling (xmlNodePtr node)
void xmlNodeAddContent (xmlNodePtr cur,
const xmlChar * content)
void xmlNodeAddContentLen (xmlNodePtr cur,
const xmlChar * content,
int len)
-int xmlNodeBufGetContent (xmlBufferPtr buffer,
xmlNodePtr cur)
+int xmlNodeBufGetContent (xmlBufferPtr buffer,
const xmlNode * cur)
int xmlNodeDump (xmlBufferPtr buf,
xmlDocPtr doc,
xmlNodePtr cur,
int level,
int format)
void xmlNodeDumpOutput (xmlOutputBufferPtr buf,
xmlDocPtr doc,
xmlNodePtr cur,
int level,
int format,
const char * encoding)
-xmlChar * xmlNodeGetBase (xmlDocPtr doc,
xmlNodePtr cur)
-xmlChar * xmlNodeGetContent (xmlNodePtr cur)
-xmlChar * xmlNodeGetLang (xmlNodePtr cur)
-int xmlNodeGetSpacePreserve (xmlNodePtr cur)
-int xmlNodeIsText (xmlNodePtr node)
-xmlChar * xmlNodeListGetRawString (xmlDocPtr doc,
xmlNodePtr list,
int inLine)
-xmlChar * xmlNodeListGetString (xmlDocPtr doc,
xmlNodePtr list,
int inLine)
+xmlChar * xmlNodeGetBase (const xmlDoc * doc,
const xmlNode * cur)
+xmlChar * xmlNodeGetContent (const xmlNode * cur)
+xmlChar * xmlNodeGetLang (const xmlNode * cur)
+int xmlNodeGetSpacePreserve (const xmlNode * cur)
+int xmlNodeIsText (const xmlNode * node)
+xmlChar * xmlNodeListGetRawString (const xmlDoc * doc,
const xmlNode * list,
int inLine)
+xmlChar * xmlNodeListGetString (xmlDocPtr doc,
const xmlNode * list,
int inLine)
void xmlNodeSetBase (xmlNodePtr cur,
const xmlChar * uri)
void xmlNodeSetContent (xmlNodePtr cur,
const xmlChar * content)
void xmlNodeSetContentLen (xmlNodePtr cur,
const xmlChar * content,
int len)
@@ -220,8 +220,8 @@ The content of this structure is not made public by the API.
void xmlSetTreeDoc (xmlNodePtr tree,
xmlDocPtr doc)
xmlChar * xmlSplitQName2 (const xmlChar * name,
xmlChar ** prefix)
const xmlChar * xmlSplitQName3 (const xmlChar * name,
int * len)
-xmlNodePtr xmlStringGetNodeList (xmlDocPtr doc,
const xmlChar * value)
-xmlNodePtr xmlStringLenGetNodeList (xmlDocPtr doc,
const xmlChar * value,
int len)
+xmlNodePtr xmlStringGetNodeList (const xmlDoc * doc,
const xmlChar * value)
+xmlNodePtr xmlStringLenGetNodeList (const xmlDoc * doc,
const xmlChar * value,
int len)
int xmlTextConcat (xmlNodePtr node,
const xmlChar * content,
int len)
xmlNodePtr xmlTextMerge (xmlNodePtr first,
xmlNodePtr second)
void xmlUnlinkNode (xmlNodePtr cur)
@@ -668,12 +668,12 @@ The content of this structure is not made public by the API.
Add a new element @elem to the list of siblings of @cur merging adjacent TEXT nodes (@elem may be freed) If the new element was already inserted in a document it is first unlinked from its existing context.
cur: | the child node |
elem: | the new node |
Returns: | the new element or NULL in case of error. |
Function: xmlAttrSerializeTxtContent
void xmlAttrSerializeTxtContent (xmlBufferPtr buf,
xmlDocPtr doc,
xmlAttrPtr attr,
const xmlChar * string)
Serialize text attribute values to an xml simple buffer
-buf: | the XML buffer output |
doc: | the document |
attr: | the attribute node |
string: | the text content |
Function: xmlBufContent
xmlChar * xmlBufContent (const xmlBufPtr buf)
+buf: | the XML buffer output |
doc: | the document |
attr: | the attribute node |
string: | the text content |
Function: xmlBufContent
xmlChar * xmlBufContent (const xmlBuf * buf)
Function to extract the content of a buffer
-buf: | the buffer |
Returns: | the internal content |
Function: xmlBufEnd
xmlChar * xmlBufEnd (const xmlBufPtr buf)
+buf: | the buffer |
Returns: | the internal content |
Function: xmlBufEnd
xmlChar * xmlBufEnd (xmlBufPtr buf)
Function to extract the end of the content of a buffer
-buf: | the buffer |
Returns: | the end of the internal content or NULL in case of error |
Function: xmlBufGetNodeContent
int xmlBufGetNodeContent (xmlBufPtr buf,
xmlNodePtr cur)
-
Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buffer with this value
+buf: | the buffer |
Returns: | the end of the internal content or NULL in case of error |
Function: xmlBufGetNodeContent
int xmlBufGetNodeContent (xmlBufPtr buf,
const xmlNode * cur)
+
Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buf with this value
buf: | a buffer xmlBufPtr |
cur: | the node being read |
Returns: | 0 in case of success and -1 in case of error. |
Function: xmlBufNodeDump
size_t xmlBufNodeDump (xmlBufPtr buf,
xmlDocPtr doc,
xmlNodePtr cur,
int level,
int format)
Dump an XML node, recursive behaviour,children are printed too. Note that @format = 1 provide node indenting only if xmlIndentTreeOutput = 1 or xmlKeepBlanksDefault(0) was called
buf: | the XML buffer output |
doc: | the document |
cur: | the current node |
level: | the imbrication level for indenting |
format: | is formatting allowed |
Returns: | the number of bytes written to the buffer, in case of error 0 is returned or @buf stores the error |
Function: xmlBufShrink
size_t xmlBufShrink (xmlBufPtr buf,
size_t len)
@@ -688,7 +688,7 @@ The content of this structure is not made public by the API.
Append a zero terminated C string to an XML buffer.
buf: | the buffer to dump |
str: | the C char string |
Returns: | 0 successful, a positive error code number otherwise and -1 in case of internal or API error. |
Function: xmlBufferCat
int xmlBufferCat (xmlBufferPtr buf,
const xmlChar * str)
Append a zero terminated string to an XML buffer.
-buf: | the buffer to add to |
str: | the #xmlChar string |
Returns: | 0 successful, a positive error code number otherwise and -1 in case of internal or API error. |
Function: xmlBufferContent
const xmlChar * xmlBufferContent (const xmlBufferPtr buf)
+buf: | the buffer to add to |
str: | the #xmlChar string |
Returns: | 0 successful, a positive error code number otherwise and -1 in case of internal or API error. |
Function: xmlBufferContent
const xmlChar * xmlBufferContent (const xmlBuffer * buf)
Function to extract the content of a buffer
buf: | the buffer |
Returns: | the internal content |
Function: xmlBufferCreate
xmlBufferPtr xmlBufferCreate (void)
routine to create an XML buffer.
@@ -706,7 +706,7 @@ The content of this structure is not made public by the API.
Frees an XML buffer. It frees both the content and the structure which encapsulate it.
Function: xmlBufferGrow
int xmlBufferGrow (xmlBufferPtr buf,
unsigned int len)
Grow the available space of an XML buffer.
-buf: | the buffer |
len: | the minimum free size to allocate |
Returns: | the new available space or -1 in case of error |
Function: xmlBufferLength
int xmlBufferLength (const xmlBufferPtr buf)
+buf: | the buffer |
len: | the minimum free size to allocate |
Returns: | the new available space or -1 in case of error |
Function: xmlBufferLength
int xmlBufferLength (const xmlBuffer * buf)
Function to get the length of a buffer
buf: | the buffer |
Returns: | the length of data in the internal content |
Function: xmlBufferResize
int xmlBufferResize (xmlBufferPtr buf,
unsigned int size)
Resize a buffer to accommodate minimum size of @size.
@@ -732,9 +732,9 @@ The content of this structure is not made public by the API.
Do a copy of the namespace.
cur: | the namespace |
Returns: | a new #xmlNsPtr, or NULL in case of error. |
Function: xmlCopyNamespaceList
xmlNsPtr xmlCopyNamespaceList (xmlNsPtr cur)
Do a copy of an namespace list.
-cur: | the first namespace |
Returns: | a new #xmlNsPtr, or NULL in case of error. |
Function: xmlCopyNode
xmlNodePtr xmlCopyNode (const xmlNodePtr node,
int extended)
+cur: | the first namespace |
Returns: | a new #xmlNsPtr, or NULL in case of error. |
Function: xmlCopyNode
xmlNodePtr xmlCopyNode (xmlNodePtr node,
int extended)
Do a copy of the node.
-node: | the node |
extended: | if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) |
Returns: | a new #xmlNodePtr, or NULL in case of error. |
Function: xmlCopyNodeList
xmlNodePtr xmlCopyNodeList (const xmlNodePtr node)
+node: | the node |
extended: | if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) |
Returns: | a new #xmlNodePtr, or NULL in case of error. |
Function: xmlCopyNodeList
xmlNodePtr xmlCopyNodeList (xmlNodePtr node)
Do a recursive copy of the node list. Use xmlDocCopyNodeList() if possible to ensure string interning.
node: | the first node in the list. |
Returns: | a new #xmlNodePtr, or NULL in case of error. |
Function: xmlCopyProp
xmlAttrPtr xmlCopyProp (xmlNodePtr target,
xmlAttrPtr cur)
Do a copy of the attribute.
@@ -746,20 +746,20 @@ The content of this structure is not made public by the API.
xmlNsPtr xmlDOMWrapAcquireNsFunction (xmlDOMWrapCtxtPtr ctxt,
xmlNodePtr node,
const xmlChar * nsName,
const xmlChar * nsPrefix)
A function called to acquire namespaces (xmlNs) from the wrapper.
ctxt: | a DOM wrapper context |
node: | the context node (element or attribute) |
nsName: | the requested namespace name |
nsPrefix: | the requested namespace prefix |
Returns: | an xmlNsPtr or NULL in case of an error. |
Function: xmlDOMWrapAdoptNode
int xmlDOMWrapAdoptNode (xmlDOMWrapCtxtPtr ctxt,
xmlDocPtr sourceDoc,
xmlNodePtr node,
xmlDocPtr destDoc,
xmlNodePtr destParent,
int options)
-
References of out-of scope ns-decls are remapped to point to @destDoc: 1) If @destParent is given, then nsDef entries on element-nodes are used 2) If *no* @destParent is given, then @destDoc->oldNs entries are used This is the case when you have an unliked node and just want to move it to the context of If @destParent is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. NOTE: This function was not intensively tested.
+
References of out-of scope ns-decls are remapped to point to @destDoc: 1) If @destParent is given, then nsDef entries on element-nodes are used 2) If *no* @destParent is given, then @destDoc->oldNs entries are used This is the case when you have an unlinked node and just want to move it to the context of If @destParent is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. NOTE: This function was not intensively tested.
ctxt: | the optional context for custom processing |
sourceDoc: | the optional sourceDoc |
node: | the node to start with |
destDoc: | the destination doc |
destParent: | the optional new parent of @node in @destDoc |
options: | option flags |
Returns: | 0 if the operation succeeded, 1 if a node of unsupported type was given, 2 if a node of not yet supported type was given and -1 on API/internal errors. |
Function: xmlDOMWrapCloneNode
int xmlDOMWrapCloneNode (xmlDOMWrapCtxtPtr ctxt,
xmlDocPtr sourceDoc,
xmlNodePtr node,
xmlNodePtr * resNode,
xmlDocPtr destDoc,
xmlNodePtr destParent,
int deep,
int options)
References of out-of scope ns-decls are remapped to point to @destDoc: 1) If @destParent is given, then nsDef entries on element-nodes are used 2) If *no* @destParent is given, then @destDoc->oldNs entries are used. This is the case when you don't know already where the cloned branch will be added to. If @destParent is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. TODO: 1) What to do with XInclude? Currently this returns an error for XInclude.
ctxt: | the optional context for custom processing |
sourceDoc: | the optional sourceDoc |
node: | the node to start with |
resNode: | the clone of the given @node |
destDoc: | the destination doc |
destParent: | the optional new parent of @node in @destDoc |
deep: | descend into child if set |
options: | option flags |
Returns: | 0 if the operation succeeded, 1 if a node of unsupported (or not yet supported) type was given, -1 on API/internal errors. |
Function: xmlDOMWrapFreeCtxt
void xmlDOMWrapFreeCtxt (xmlDOMWrapCtxtPtr ctxt)
Frees the DOM-wrapper context.
ctxt: | the DOM-wrapper context |
Function: xmlDOMWrapNewCtxt
xmlDOMWrapCtxtPtr xmlDOMWrapNewCtxt (void)
Allocates and initializes a new DOM-wrapper context.
-Function: xmlDOMWrapReconcileNamespaces
int xmlDOMWrapReconcileNamespaces (xmlDOMWrapCtxtPtr ctxt,
xmlNodePtr elem,
int options)
+Function: xmlDOMWrapReconcileNamespaces
int xmlDOMWrapReconcileNamespaces (xmlDOMWrapCtxtPtr ctxt,
xmlNodePtr elem,
int options)
Ensures that ns-references point to ns-decls hold on element-nodes. Ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. NOTE: This function was not intensively tested.
ctxt: | DOM wrapper context, unused at the moment |
elem: | the element-node |
options: | option flags |
Returns: | 0 if succeeded, -1 otherwise and on API/internal errors. |
Function: xmlDOMWrapRemoveNode
int xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt,
xmlDocPtr doc,
xmlNodePtr node,
int options)
Unlinks the given node from its owner. This will substitute ns-references to node->nsDef for ns-references to doc->oldNs, thus ensuring the removed branch to be autark wrt ns-references. NOTE: This function was not intensively tested.
-ctxt: | a DOM wrapper context |
doc: | the doc |
node: | the node to be removed. |
options: | set of options, unused at the moment |
Returns: | 0 on success, 1 if the node is not supported, -1 on API and internal errors. |
Function: xmlDocCopyNode
xmlNodePtr xmlDocCopyNode (const xmlNodePtr node,
xmlDocPtr doc,
int extended)
+ctxt: | a DOM wrapper context |
doc: | the doc |
node: | the node to be removed. |
options: | set of options, unused at the moment |
Returns: | 0 on success, 1 if the node is not supported, -1 on API and internal errors. |
Function: xmlDocCopyNode
xmlNodePtr xmlDocCopyNode (xmlNodePtr node,
xmlDocPtr doc,
int extended)
Do a copy of the node to a given document.
-node: | the node |
doc: | the document |
extended: | if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) |
Returns: | a new #xmlNodePtr, or NULL in case of error. |
Function: xmlDocCopyNodeList
xmlNodePtr xmlDocCopyNodeList (xmlDocPtr doc,
const xmlNodePtr node)
+node: | the node |
doc: | the document |
extended: | if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) |
Returns: | a new #xmlNodePtr, or NULL in case of error. |
Function: xmlDocCopyNodeList
xmlNodePtr xmlDocCopyNodeList (xmlDocPtr doc,
xmlNodePtr node)
Do a recursive copy of the node list.
doc: | the target document |
node: | the first node in the list. |
Returns: | a new #xmlNodePtr, or NULL in case of error. |
Function: xmlDocDump
int xmlDocDump (FILE * f,
xmlDocPtr cur)
Dump an XML document to an open FILE.
@@ -773,7 +773,7 @@ The content of this structure is not made public by the API.
Dump the current DOM tree into memory using the character encoding specified by the caller. Note it is up to the caller of this function to free the allocated memory with xmlFree().
out_doc: | Document to generate XML text from |
doc_txt_ptr: | Memory pointer for allocated XML text |
doc_txt_len: | Length of the generated XML text |
txt_encoding: | Character encoding to use when generating XML text |
Function: xmlDocFormatDump
int xmlDocFormatDump (FILE * f,
xmlDocPtr cur,
int format)
Dump an XML document to an open FILE.
-f: | the FILE* |
cur: | the document |
format: | should formatting spaces been added |
Returns: | the number of bytes written or -1 in case of failure. Note that @format = 1 provide node indenting only if xmlIndentTreeOutput = 1 or xmlKeepBlanksDefault(0) was called |
Function: xmlDocGetRootElement
xmlNodePtr xmlDocGetRootElement (xmlDocPtr doc)
+f: | the FILE* |
cur: | the document |
format: | should formatting spaces been added |
Returns: | the number of bytes written or -1 in case of failure. Note that @format = 1 provide node indenting only if xmlIndentTreeOutput = 1 or xmlKeepBlanksDefault(0) was called |
Function: xmlDocGetRootElement
xmlNodePtr xmlDocGetRootElement (const xmlDoc * doc)
Get the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).
doc: | the document |
Returns: | the #xmlNodePtr for the root or NULL |
Function: xmlDocSetRootElement
xmlNodePtr xmlDocSetRootElement (xmlDocPtr doc,
xmlNodePtr root)
Set the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).
@@ -801,29 +801,29 @@ The content of this structure is not made public by the API.
Types are XML_BUFFER_ALLOC_EXACT - use exact sizes, keeps memory usage down XML_BUFFER_ALLOC_DOUBLEIT - double buffer when extra needed, improves performance XML_BUFFER_ALLOC_HYBRID - use exact sizes on small strings to keep memory usage tight in normal usage, and doubleit on large strings to avoid pathological performance.
Returns: | the current allocation scheme |
Function: xmlGetCompressMode
int xmlGetCompressMode (void)
get the default compression mode used, ZLIB based.
-Returns: | 0 (uncompressed) to 9 (max compression) |
Function: xmlGetDocCompressMode
int xmlGetDocCompressMode (xmlDocPtr doc)
+Returns: | 0 (uncompressed) to 9 (max compression) |
Function: xmlGetDocCompressMode
int xmlGetDocCompressMode (const xmlDoc * doc)
get the compression ratio for a document, ZLIB based
-doc: | the document |
Returns: | 0 (uncompressed) to 9 (max compression) |
Function: xmlGetIntSubset
xmlDtdPtr xmlGetIntSubset (xmlDocPtr doc)
+doc: | the document |
Returns: | 0 (uncompressed) to 9 (max compression) |
Function: xmlGetIntSubset
xmlDtdPtr xmlGetIntSubset (const xmlDoc * doc)
Get the internal subset of a document
-doc: | the document pointer |
Returns: | a pointer to the DTD structure or NULL if not found |
Function: xmlGetLastChild
xmlNodePtr xmlGetLastChild (xmlNodePtr parent)
+doc: | the document pointer |
Returns: | a pointer to the DTD structure or NULL if not found |
Function: xmlGetLastChild
xmlNodePtr xmlGetLastChild (const xmlNode * parent)
Search the last child of a node.
-parent: | the parent node |
Returns: | the last child or NULL if none. |
Function: xmlGetLineNo
long xmlGetLineNo (xmlNodePtr node)
+parent: | the parent node |
Returns: | the last child or NULL if none. |
Function: xmlGetLineNo
long xmlGetLineNo (const xmlNode * node)
Get line number of @node. Try to override the limitation of lines being store in 16 bits ints if XML_PARSE_BIG_LINES parser option was used
-node: | valid node |
Returns: | the line number if successful, -1 otherwise |
Function: xmlGetNoNsProp
xmlChar * xmlGetNoNsProp (xmlNodePtr node,
const xmlChar * name)
+node: | valid node |
Returns: | the line number if successful, -1 otherwise |
Function: xmlGetNoNsProp
xmlChar * xmlGetNoNsProp (const xmlNode * node,
const xmlChar * name)
Search and get the value of an attribute associated to a node This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off. This function is similar to xmlGetProp except it will accept only an attribute in no namespace.
-node: | the node |
name: | the attribute name |
Returns: | the attribute value or NULL if not found. It's up to the caller to free the memory with xmlFree(). |
Function: xmlGetNodePath
xmlChar * xmlGetNodePath (xmlNodePtr node)
+node: | the node |
name: | the attribute name |
Returns: | the attribute value or NULL if not found. It's up to the caller to free the memory with xmlFree(). |
Function: xmlGetNodePath
xmlChar * xmlGetNodePath (const xmlNode * node)
Build a structure based Path for the given node
-node: | a node |
Returns: | the new path or NULL in case of error. The caller must free the returned string |
Function: xmlGetNsList
xmlNsPtr * xmlGetNsList (xmlDocPtr doc,
xmlNodePtr node)
+node: | a node |
Returns: | the new path or NULL in case of error. The caller must free the returned string |
Function: xmlGetNsList
xmlNsPtr * xmlGetNsList (const xmlDoc * doc,
const xmlNode * node)
Search all the namespace applying to a given element.
-doc: | the document |
node: | the current node |
Returns: | an NULL terminated array of all the #xmlNsPtr found that need to be freed by the caller or NULL if no namespace if defined |
Function: xmlGetNsProp
xmlChar * xmlGetNsProp (xmlNodePtr node,
const xmlChar * name,
const xmlChar * nameSpace)
+doc: | the document |
node: | the current node |
Returns: | an NULL terminated array of all the #xmlNsPtr found that need to be freed by the caller or NULL if no namespace if defined |
Function: xmlGetNsProp
xmlChar * xmlGetNsProp (const xmlNode * node,
const xmlChar * name,
const xmlChar * nameSpace)
Search and get the value of an attribute associated to a node This attribute has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off.
-node: | the node |
name: | the attribute name |
nameSpace: | the URI of the namespace |
Returns: | the attribute value or NULL if not found. It's up to the caller to free the memory with xmlFree(). |
Function: xmlGetProp
xmlChar * xmlGetProp (xmlNodePtr node,
const xmlChar * name)
+node: | the node |
name: | the attribute name |
nameSpace: | the URI of the namespace |
Returns: | the attribute value or NULL if not found. It's up to the caller to free the memory with xmlFree(). |
Function: xmlGetProp
xmlChar * xmlGetProp (const xmlNode * node,
const xmlChar * name)
Search and get the value of an attribute associated to a node This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off. NOTE: this function acts independently of namespaces associated to the attribute. Use xmlGetNsProp() or xmlGetNoNsProp() for namespace aware processing.
-node: | the node |
name: | the attribute name |
Returns: | the attribute value or NULL if not found. It's up to the caller to free the memory with xmlFree(). |
Function: xmlHasNsProp
xmlAttrPtr xmlHasNsProp (xmlNodePtr node,
const xmlChar * name,
const xmlChar * nameSpace)
+node: | the node |
name: | the attribute name |
Returns: | the attribute value or NULL if not found. It's up to the caller to free the memory with xmlFree(). |
Function: xmlHasNsProp
xmlAttrPtr xmlHasNsProp (const xmlNode * node,
const xmlChar * name,
const xmlChar * nameSpace)
Search for an attribute associated to a node This attribute has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off. Note that a namespace of NULL indicates to use the default namespace.
-node: | the node |
name: | the attribute name |
nameSpace: | the URI of the namespace |
Returns: | the attribute or the attribute declaration or NULL if neither was found. |
Function: xmlHasProp
xmlAttrPtr xmlHasProp (xmlNodePtr node,
const xmlChar * name)
+node: | the node |
name: | the attribute name |
nameSpace: | the URI of the namespace |
Returns: | the attribute or the attribute declaration or NULL if neither was found. |
Function: xmlHasProp
xmlAttrPtr xmlHasProp (const xmlNode * node,
const xmlChar * name)
Search an attribute associated to a node This function also looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off.
-Function: xmlIsBlankNode
int xmlIsBlankNode (xmlNodePtr node)
+Function: xmlIsBlankNode
int xmlIsBlankNode (const xmlNode * node)
Checks whether this node is an empty or whitespace only (and possibly ignorable) text-node.
node: | the node |
Returns: | 1 yes, 0 no |
Function: xmlIsXHTML
int xmlIsXHTML (const xmlChar * systemID,
const xmlChar * publicID)
Try to find if the document correspond to an XHTML DTD
@@ -853,7 +853,7 @@ The content of this structure is not made public by the API.
Create a new property carried by a document.
Function: xmlNewDocRawNode
xmlNodePtr xmlNewDocRawNode (xmlDocPtr doc,
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
Creation of a new node element within a document. @ns and @content are optional (NULL).
-doc: | the document |
ns: | namespace if any |
name: | the node name |
content: | the text content if any |
Returns: | a pointer to the new node object. |
Function: xmlNewDocText
xmlNodePtr xmlNewDocText (xmlDocPtr doc,
const xmlChar * content)
+doc: | the document |
ns: | namespace if any |
name: | the node name |
content: | the text content if any |
Returns: | a pointer to the new node object. |
Function: xmlNewDocText
xmlNodePtr xmlNewDocText (const xmlDoc * doc,
const xmlChar * content)
Creation of a new text node within a document.
doc: | the document |
content: | the text content |
Returns: | a pointer to the new node object. |
Function: xmlNewDocTextLen
xmlNodePtr xmlNewDocTextLen (xmlDocPtr doc,
const xmlChar * content,
int len)
Creation of a new text node with an extra content length parameter. The text node pertain to a given document.
@@ -866,7 +866,7 @@ The content of this structure is not made public by the API.
ns: | namespace if any |
name: | the node name |
Returns: | a pointer to the new node object. Uses xmlStrdup() to make copy of @name. |
Function: xmlNewNodeEatName
xmlNodePtr xmlNewNodeEatName (xmlNsPtr ns,
xmlChar * name)
Creation of a new node element. @ns is optional (NULL).
ns: | namespace if any |
name: | the node name |
Returns: | a pointer to the new node object, with pointer @name as new node's name. Use xmlNewNode() if a copy of @name string is is needed as new node's name. |
Function: xmlNewNs
xmlNsPtr xmlNewNs (xmlNodePtr node,
const xmlChar * href,
const xmlChar * prefix)
-
Creation of a new Namespace. This function will refuse to create a namespace with a similar prefix than an existing one present on this node. We use href==NULL in the case of an element creation where the namespace was not defined.
+
Creation of a new Namespace. This function will refuse to create a namespace with a similar prefix than an existing one present on this node. Note that for a default namespace, @prefix should be NULL. We use href==NULL in the case of an element creation where the namespace was not defined.
node: | the element carrying the namespace |
href: | the URI associated |
prefix: | the prefix for the namespace |
Returns: | a new namespace pointer or NULL |
Function: xmlNewNsProp
xmlAttrPtr xmlNewNsProp (xmlNodePtr node,
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * value)
Create a new property tagged with a namespace and carried by a node.
Function: xmlNewNsPropEatName
xmlAttrPtr xmlNewNsPropEatName (xmlNodePtr node,
xmlNsPtr ns,
xmlChar * name,
const xmlChar * value)
@@ -875,7 +875,7 @@ The content of this structure is not made public by the API.
Creation of a processing instruction element. Use xmlDocNewPI preferably to get string interning
name: | the processing instruction name |
content: | the PI content |
Returns: | a pointer to the new node object. |
Function: xmlNewProp
xmlAttrPtr xmlNewProp (xmlNodePtr node,
const xmlChar * name,
const xmlChar * value)
Create a new property carried by a node.
-Function: xmlNewReference
xmlNodePtr xmlNewReference (xmlDocPtr doc,
const xmlChar * name)
+Function: xmlNewReference
xmlNodePtr xmlNewReference (const xmlDoc * doc,
const xmlChar * name)
Creation of a new reference node.
doc: | the document |
name: | the reference name, or the reference string with & and ; |
Returns: | a pointer to the new node object. |
Function: xmlNewText
xmlNodePtr xmlNewText (const xmlChar * content)
Creation of a new text node.
@@ -889,25 +889,25 @@ The content of this structure is not made public by the API.
Append the extra substring to the node content. NOTE: In contrast to xmlNodeSetContent(), @content is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.
cur: | the node being modified |
content: | extra content |
Function: xmlNodeAddContentLen
void xmlNodeAddContentLen (xmlNodePtr cur,
const xmlChar * content,
int len)
Append the extra substring to the node content. NOTE: In contrast to xmlNodeSetContentLen(), @content is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.
-cur: | the node being modified |
content: | extra content |
len: | the size of @content |
Function: xmlNodeBufGetContent
int xmlNodeBufGetContent (xmlBufferPtr buffer,
xmlNodePtr cur)
+cur: | the node being modified |
content: | extra content |
len: | the size of @content |
Function: xmlNodeBufGetContent
int xmlNodeBufGetContent (xmlBufferPtr buffer,
const xmlNode * cur)
Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buffer with this value
buffer: | a buffer |
cur: | the node being read |
Returns: | 0 in case of success and -1 in case of error. |
Function: xmlNodeDump
int xmlNodeDump (xmlBufferPtr buf,
xmlDocPtr doc,
xmlNodePtr cur,
int level,
int format)
Dump an XML node, recursive behaviour,children are printed too. Note that @format = 1 provide node indenting only if xmlIndentTreeOutput = 1 or xmlKeepBlanksDefault(0) was called Since this is using xmlBuffer structures it is limited to 2GB and somehow deprecated, use xmlBufNodeDump() instead.
buf: | the XML buffer output |
doc: | the document |
cur: | the current node |
level: | the imbrication level for indenting |
format: | is formatting allowed |
Returns: | the number of bytes written to the buffer or -1 in case of error |
Function: xmlNodeDumpOutput
void xmlNodeDumpOutput (xmlOutputBufferPtr buf,
xmlDocPtr doc,
xmlNodePtr cur,
int level,
int format,
const char * encoding)
Dump an XML node, recursive behaviour, children are printed too. Note that @format = 1 provide node indenting only if xmlIndentTreeOutput = 1 or xmlKeepBlanksDefault(0) was called
-buf: | the XML buffer output |
doc: | the document |
cur: | the current node |
level: | the imbrication level for indenting |
format: | is formatting allowed |
encoding: | an optional encoding string |
Function: xmlNodeGetBase
xmlChar * xmlNodeGetBase (xmlDocPtr doc,
xmlNodePtr cur)
+buf: | the XML buffer output |
doc: | the document |
cur: | the current node |
level: | the imbrication level for indenting |
format: | is formatting allowed |
encoding: | an optional encoding string |
Function: xmlNodeGetBase
xmlChar * xmlNodeGetBase (const xmlDoc * doc,
const xmlNode * cur)
Searches for the BASE URL. The code should work on both XML and HTML document even if base mechanisms are completely different. It returns the base as defined in RFC 2396 sections 5.1.1. Base URI within Document Content and 5.1.2. Base URI from the Encapsulating Entity However it does not return the document base (5.1.3), use doc->URL in this case
-doc: | the document the node pertains to |
cur: | the node being checked |
Returns: | a pointer to the base URL, or NULL if not found It's up to the caller to free the memory with xmlFree(). |
Function: xmlNodeGetContent
xmlChar * xmlNodeGetContent (xmlNodePtr cur)
+doc: | the document the node pertains to |
cur: | the node being checked |
Returns: | a pointer to the base URL, or NULL if not found It's up to the caller to free the memory with xmlFree(). |
Function: xmlNodeGetContent
xmlChar * xmlNodeGetContent (const xmlNode * cur)
Read the value of a node, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted.
-cur: | the node being read |
Returns: | a new #xmlChar * or NULL if no content is available. It's up to the caller to free the memory with xmlFree(). |
Function: xmlNodeGetLang
xmlChar * xmlNodeGetLang (xmlNodePtr cur)
+cur: | the node being read |
Returns: | a new #xmlChar * or NULL if no content is available. It's up to the caller to free the memory with xmlFree(). |
Function: xmlNodeGetLang
xmlChar * xmlNodeGetLang (const xmlNode * cur)
Searches the language of a node, i.e. the values of the xml:lang attribute or the one carried by the nearest ancestor.
-cur: | the node being checked |
Returns: | a pointer to the lang value, or NULL if not found It's up to the caller to free the memory with xmlFree(). |
Function: xmlNodeGetSpacePreserve
int xmlNodeGetSpacePreserve (xmlNodePtr cur)
+cur: | the node being checked |
Returns: | a pointer to the lang value, or NULL if not found It's up to the caller to free the memory with xmlFree(). |
Function: xmlNodeGetSpacePreserve
int xmlNodeGetSpacePreserve (const xmlNode * cur)
Searches the space preserving behaviour of a node, i.e. the values of the xml:space attribute or the one carried by the nearest ancestor.
-cur: | the node being checked |
Returns: | -1 if xml:space is not inherited, 0 if "default", 1 if "preserve" |
Function: xmlNodeIsText
int xmlNodeIsText (xmlNodePtr node)
+cur: | the node being checked |
Returns: | -1 if xml:space is not inherited, 0 if "default", 1 if "preserve" |
Function: xmlNodeIsText
int xmlNodeIsText (const xmlNode * node)
Is this node a Text node ?
-node: | the node |
Returns: | 1 yes, 0 no |
Function: xmlNodeListGetRawString
xmlChar * xmlNodeListGetRawString (xmlDocPtr doc,
xmlNodePtr list,
int inLine)
+node: | the node |
Returns: | 1 yes, 0 no |
Function: xmlNodeListGetRawString
xmlChar * xmlNodeListGetRawString (const xmlDoc * doc,
const xmlNode * list,
int inLine)
Builds the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs, contrary to xmlNodeListGetString() this function doesn't do any character encoding handling.
-doc: | the document |
list: | a Node list |
inLine: | should we replace entity contents or show their external form |
Returns: | a pointer to the string copy, the caller must free it with xmlFree(). |
Function: xmlNodeListGetString
xmlChar * xmlNodeListGetString (xmlDocPtr doc,
xmlNodePtr list,
int inLine)
+doc: | the document |
list: | a Node list |
inLine: | should we replace entity contents or show their external form |
Returns: | a pointer to the string copy, the caller must free it with xmlFree(). |
Function: xmlNodeListGetString
xmlChar * xmlNodeListGetString (xmlDocPtr doc,
const xmlNode * list,
int inLine)
Build the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs
doc: | the document |
list: | a Node list |
inLine: | should we replace entity contents or show their external form |
Returns: | a pointer to the string copy, the caller must free it with xmlFree(). |
Function: xmlNodeSetBase
void xmlNodeSetBase (xmlNodePtr cur,
const xmlChar * uri)
Set (or reset) the base URI of a node, i.e. the value of the xml:base attribute.
@@ -965,9 +965,9 @@ The content of this structure is not made public by the API.
parse an XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName
name: | the full QName |
prefix: | a xmlChar ** |
Returns: | NULL if not a QName, otherwise the local part, and prefix is updated to get the Prefix if any. |
Function: xmlSplitQName3
const xmlChar * xmlSplitQName3 (const xmlChar * name,
int * len)
parse an XML qualified name string,i
-name: | the full QName |
len: | an int * |
Returns: | NULL if it is not a Qualified Name, otherwise, update len with the length in byte of the prefix and return a pointer to the start of the name without the prefix |
Function: xmlStringGetNodeList
xmlNodePtr xmlStringGetNodeList (xmlDocPtr doc,
const xmlChar * value)
+name: | the full QName |
len: | an int * |
Returns: | NULL if it is not a Qualified Name, otherwise, update len with the length in byte of the prefix and return a pointer to the start of the name without the prefix |
Function: xmlStringGetNodeList
xmlNodePtr xmlStringGetNodeList (const xmlDoc * doc,
const xmlChar * value)
Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.
-doc: | the document |
value: | the value of the attribute |
Returns: | a pointer to the first child |
Function: xmlStringLenGetNodeList
xmlNodePtr xmlStringLenGetNodeList (xmlDocPtr doc,
const xmlChar * value,
int len)
+doc: | the document |
value: | the value of the attribute |
Returns: | a pointer to the first child |
Function: xmlStringLenGetNodeList
xmlNodePtr xmlStringLenGetNodeList (const xmlDoc * doc,
const xmlChar * value,
int len)
Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.
doc: | the document |
value: | the value of the text |
len: | the length of the string value |
Returns: | a pointer to the first child |
Function: xmlTextConcat
int xmlTextConcat (xmlNodePtr node,
const xmlChar * content,
int len)
Concat the given string at the end of the existing node content
diff --git a/doc/html/libxml-xmlerror.html b/doc/html/libxml-xmlerror.html
index 919d8dea..5c3a1040 100644
--- a/doc/html/libxml-xmlerror.html
+++ b/doc/html/libxml-xmlerror.html
@@ -48,7 +48,7 @@ void xmlStructuredErrorFunc (void * userD
char * str2 : extra string information
char * str3 : extra string information
int int1 : extra number information
- int int2 : column number of the error or 0 if N/A
+ int int2 : error column # or 0 if N/A (todo: renam
void * ctxt : the parser context if available
void * node : the node in the tree
}
Enum xmlErrorDomain {
diff --git a/doc/html/libxml-xmlschemastypes.html b/doc/html/libxml-xmlschemastypes.html
index 1d08141f..6925cfa0 100644
--- a/doc/html/libxml-xmlschemastypes.html
+++ b/doc/html/libxml-xmlschemastypes.html
@@ -73,9 +73,9 @@ A:link, A:visited, A:active { text-decoration: underline }
type: | the built-in simple type. |
Returns: | the item type of @type as defined by the built-in datatype hierarchy of XML Schema Part 2: Datatypes, or NULL in case of an error. |
Function: xmlSchemaGetBuiltInType
xmlSchemaTypePtr xmlSchemaGetBuiltInType (xmlSchemaValType type)
Gives you the type struct for a built-in type by its type id.
type: | the type of the built in type |
Returns: | the type if found, NULL otherwise. |
Function: xmlSchemaGetCanonValue
int xmlSchemaGetCanonValue (xmlSchemaValPtr val,
const xmlChar ** retValue)
-
Get a the cononical lexical representation of the value. The caller has to FREE the returned retValue. WARNING: Some value types are not supported yet, resulting in a @retValue of "???". TODO: XML Schema 1.0 does not define canonical representations for: duration, gYearMonth, gYear, gMonthDay, gMonth, gDay, anyURI, QName, NOTATION. This will be fixed in XML Schema 1.1.
+
Get the canonical lexical representation of the value. The caller has to FREE the returned retValue. WARNING: Some value types are not supported yet, resulting in a @retValue of "???". TODO: XML Schema 1.0 does not define canonical representations for: duration, gYearMonth, gYear, gMonthDay, gMonth, gDay, anyURI, QName, NOTATION. This will be fixed in XML Schema 1.1.
val: | the precomputed value |
retValue: | the returned value |
Returns: | 0 if the value could be built, 1 if the value type is not supported yet and -1 in case of API errors. |
Function: xmlSchemaGetCanonValueWhtsp
int xmlSchemaGetCanonValueWhtsp (xmlSchemaValPtr val,
const xmlChar ** retValue,
xmlSchemaWhitespaceValueType ws)
-
Get a the cononical representation of the value. The caller has to free the returned @retValue.
+
Get the canonical representation of the value. The caller has to free the returned @retValue.
val: | the precomputed value |
retValue: | the returned value |
ws: | the whitespace type of the value |
Returns: | 0 if the value could be built, 1 if the value type is not supported yet and -1 in case of API errors. |
Function: xmlSchemaGetFacetValueAsULong
unsigned long xmlSchemaGetFacetValueAsULong (xmlSchemaFacetPtr facet)
Extract the value of a facet
facet: | an schemas type facet |
Returns: | the value as a long |
Function: xmlSchemaGetPredefinedType
xmlSchemaTypePtr xmlSchemaGetPredefinedType (const xmlChar * name,
const xmlChar * ns)
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index 45bceb53..f83d14f0 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -6191,7 +6191,7 @@ set at the end of parsing'/>
-
@@ -6213,7 +6213,7 @@ set at the end of parsing'/>
-
+
@@ -8359,7 +8359,7 @@ Could we use @subtypes for this?'/>
- defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
+ defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
Add a new node @elem as the previous sibling of @cur merging adjacent TEXT nodes (@elem may be freed) If the new node was already inserted in a document it is first unlinked from its existing context. If the new node is ATTRIBUTE, it is added into properties instead of children. If there is an attribute with equal name, it is first destroyed.
@@ -8564,18 +8564,18 @@ Could we use @subtypes for this?'/>
Function to extract the content of a buffer
-
+
Function to extract the end of the content of a buffer
-
+
- Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buffer with this value
+ Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buf with this value
-
+
defined(LIBXML_OUTPUT_ENABLED)
@@ -8627,7 +8627,7 @@ Could we use @subtypes for this?'/>
Function to extract the content of a buffer
-
+
routine to create an XML buffer.
@@ -8674,7 +8674,7 @@ Could we use @subtypes for this?'/>
Function to get the length of a buffer
-
+
Resize a buffer to accommodate minimum size of @size.
@@ -9145,13 +9145,13 @@ Could we use @subtypes for this?'/>
Do a copy of the node.
-
+
Do a recursive copy of the node list. Use xmlDocCopyNodeList() if possible to ensure string interning.
-
+
defined(LIBXML_TREE_ENABLED)
@@ -9333,7 +9333,7 @@ Could we use @subtypes for this?'/>
- References of out-of scope ns-decls are remapped to point to @destDoc: 1) If @destParent is given, then nsDef entries on element-nodes are used 2) If *no* @destParent is given, then @destDoc->oldNs entries are used This is the case when you have an unliked node and just want to move it to the context of If @destParent is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. NOTE: This function was not intensively tested.
+ References of out-of scope ns-decls are remapped to point to @destDoc: 1) If @destParent is given, then nsDef entries on element-nodes are used 2) If *no* @destParent is given, then @destDoc->oldNs entries are used This is the case when you have an unlinked node and just want to move it to the context of If @destParent is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. NOTE: This function was not intensively tested.
@@ -9361,7 +9361,7 @@ Could we use @subtypes for this?'/>
Allocates and initializes a new DOM-wrapper context.
-
+
Ensures that ns-references point to ns-decls hold on element-nodes. Ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content. NOTE: This function was not intensively tested.
@@ -9572,7 +9572,7 @@ Could we use @subtypes for this?'/>
Do a copy of the node to a given document.
-
+
@@ -9580,7 +9580,7 @@ Could we use @subtypes for this?'/>
Do a recursive copy of the node list.
-
+
defined(LIBXML_OUTPUT_ENABLED)
@@ -9636,7 +9636,7 @@ Could we use @subtypes for this?'/>
Get the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).
-
+
defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
@@ -9725,7 +9725,7 @@ Could we use @subtypes for this?'/>
Do a global encoding of a string, replacing the predefined entities this routine is reentrant, and result must be deallocated.
-
+
@@ -10137,12 +10137,12 @@ Could we use @subtypes for this?'/>
get the compression ratio for a document, ZLIB based
-
+
Do an entity lookup in the document entity hash table and
-
+
@@ -10222,12 +10222,12 @@ Could we use @subtypes for this?'/>
Get the internal subset of a document
-
+
Search the last child of a node.
-
+
Get the last global error registered. This is per thread if compiled with thread support.
@@ -10236,31 +10236,31 @@ Could we use @subtypes for this?'/>
Get line number of @node. Try to override the limitation of lines being store in 16 bits ints if XML_PARSE_BIG_LINES parser option was used
-
+
Search and get the value of an attribute associated to a node This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off. This function is similar to xmlGetProp except it will accept only an attribute in no namespace.
-
+
defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
Build a structure based Path for the given node
-
+
defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
Search all the namespace applying to a given element.
-
-
+
+
Search and get the value of an attribute associated to a node This attribute has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off.
-
+
@@ -10278,7 +10278,7 @@ Could we use @subtypes for this?'/>
Search and get the value of an attribute associated to a node This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off. NOTE: this function acts independently of namespaces associated to the attribute. Use xmlGetNsProp() or xmlGetNoNsProp() for namespace aware processing.
-
+
@@ -10312,14 +10312,14 @@ Could we use @subtypes for this?'/>
Search for an attribute associated to a node This attribute has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off. Note that a namespace of NULL indicates to use the default namespace.
-
+
Search an attribute associated to a node This function also looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off.
-
+
@@ -10686,7 +10686,7 @@ Could we use @subtypes for this?'/>
Checks whether this node is an empty or whitespace only (and possibly ignorable) text-node.
-
+
This function is DEPRECATED. Use xmlIsChar_ch or xmlIsCharQ instead
@@ -11505,7 +11505,7 @@ Could we use @subtypes for this?'/>
Creation of a new text node within a document.
-
+
@@ -11588,7 +11588,7 @@ Could we use @subtypes for this?'/>
- Creation of a new Namespace. This function will refuse to create a namespace with a similar prefix than an existing one present on this node. We use href==NULL in the case of an element creation where the namespace was not defined.
+ Creation of a new Namespace. This function will refuse to create a namespace with a similar prefix than an existing one present on this node. Note that for a default namespace, @prefix should be NULL. We use href==NULL in the case of an element creation where the namespace was not defined.
@@ -11635,7 +11635,7 @@ Could we use @subtypes for this?'/>
Creation of a new reference node.
-
+
@@ -11759,7 +11759,7 @@ Could we use @subtypes for this?'/>
Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buffer with this value
-
+
defined(LIBXML_OUTPUT_ENABLED)
@@ -11785,42 +11785,42 @@ Could we use @subtypes for this?'/>
Searches for the BASE URL. The code should work on both XML and HTML document even if base mechanisms are completely different. It returns the base as defined in RFC 2396 sections 5.1.1. Base URI within Document Content and 5.1.2. Base URI from the Encapsulating Entity However it does not return the document base (5.1.3), use doc->URL in this case
-
-
+
+
Read the value of a node, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted.
-
+
Searches the language of a node, i.e. the values of the xml:lang attribute or the one carried by the nearest ancestor.
-
+
Searches the space preserving behaviour of a node, i.e. the values of the xml:space attribute or the one carried by the nearest ancestor.
-
+
Is this node a Text node ?
-
+
defined(LIBXML_TREE_ENABLED)
Builds the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs, contrary to xmlNodeListGetString() this function doesn't do any character encoding handling.
-
-
+
+
Build the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs
-
+
@@ -13233,7 +13233,7 @@ Could we use @subtypes for this?'/>
- defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
+ defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
called when the end of an element has been detected.
@@ -13385,7 +13385,7 @@ Could we use @subtypes for this?'/>
- defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
+ defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
called when an opening tag has been processed.
@@ -13741,14 +13741,14 @@ Could we use @subtypes for this?'/>
defined(LIBXML_SCHEMAS_ENABLED)
- Get a the cononical lexical representation of the value. The caller has to FREE the returned retValue. WARNING: Some value types are not supported yet, resulting in a @retValue of "???". TODO: XML Schema 1.0 does not define canonical representations for: duration, gYearMonth, gYear, gMonthDay, gMonth, gDay, anyURI, QName, NOTATION. This will be fixed in XML Schema 1.1.
+ Get the canonical lexical representation of the value. The caller has to FREE the returned retValue. WARNING: Some value types are not supported yet, resulting in a @retValue of "???". TODO: XML Schema 1.0 does not define canonical representations for: duration, gYearMonth, gYear, gMonthDay, gMonth, gDay, anyURI, QName, NOTATION. This will be fixed in XML Schema 1.1.
defined(LIBXML_SCHEMAS_ENABLED)
- Get a the cononical representation of the value. The caller has to free the returned @retValue.
+ Get the canonical representation of the value. The caller has to free the returned @retValue.
@@ -14600,7 +14600,7 @@ Could we use @subtypes for this?'/>
Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.
-
+
@@ -14617,7 +14617,7 @@ Could we use @subtypes for this?'/>
Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.
-
+
@@ -17071,7 +17071,7 @@ Could we use @subtypes for this?'/>
- defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
+ defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
Check that a value conforms to the lexical space of NCName
diff --git a/doc/libxml2-refs.xml b/doc/libxml2-refs.xml
index b33d1035..f42fab4e 100644
--- a/doc/libxml2-refs.xml
+++ b/doc/libxml2-refs.xml
@@ -8136,12 +8136,13 @@
-
+
-
+
+
-
+
@@ -8555,15 +8556,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
@@ -9059,6 +9091,7 @@
+
@@ -9296,20 +9329,14 @@
-
-
-
-
-
-
@@ -9325,17 +9352,13 @@
-
-
-
-
@@ -9367,8 +9390,6 @@
-
-
@@ -9692,10 +9713,11 @@
-
+
+
@@ -9707,22 +9729,14 @@
+
+
-
-
-
-
-
-
-
-
-
-
@@ -9738,16 +9752,8 @@
-
-
-
-
-
-
-
-
@@ -19950,7 +19956,6 @@
-
@@ -19962,6 +19967,9 @@
+
+
+
@@ -20127,6 +20135,7 @@
+
@@ -20878,10 +20887,6 @@
-
-
-
-
@@ -22452,9 +22457,6 @@
-
-
-
@@ -22555,9 +22557,6 @@
-
-
-
@@ -30318,9 +30317,6 @@
-
-
-
@@ -30329,6 +30325,7 @@
+
diff --git a/python/generator.py b/python/generator.py
index 82109e3f..c0cb3add 100755
--- a/python/generator.py
+++ b/python/generator.py
@@ -597,7 +597,7 @@ classes_type = {
"xmlNodePtr": ("._o", "xmlNode(_obj=%s)", "xmlNode"),
"xmlNode *": ("._o", "xmlNode(_obj=%s)", "xmlNode"),
"xmlDocPtr": ("._o", "xmlDoc(_obj=%s)", "xmlDoc"),
- "xmlDocPtr *": ("._o", "xmlDoc(_obj=%s)", "xmlDoc"),
+ "xmlDoc *": ("._o", "xmlDoc(_obj=%s)", "xmlDoc"),
"htmlDocPtr": ("._o", "xmlDoc(_obj=%s)", "xmlDoc"),
"htmlxmlDocPtr *": ("._o", "xmlDoc(_obj=%s)", "xmlDoc"),
"xmlAttrPtr": ("._o", "xmlAttr(_obj=%s)", "xmlAttr"),
diff --git a/testapi.c b/testapi.c
index c745ec35..0367ffd4 100644
--- a/testapi.c
+++ b/testapi.c
@@ -4061,7 +4061,7 @@ static int
test_xmlSAX2EndElement(void) {
int test_ret = 0;
-#if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
+#if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
#ifdef LIBXML_SAX1_ENABLED
int mem_base;
void * ctx; /* the user data (XML parser context) */
@@ -5026,7 +5026,7 @@ static int
test_xmlSAX2StartElement(void) {
int test_ret = 0;
-#if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
+#if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
#ifdef LIBXML_SAX1_ENABLED
int mem_base;
void * ctx; /* the user data (XML parser context) */
@@ -9454,27 +9454,34 @@ test_xmlEncodeEntitiesReentrant(void) {
}
+#define gen_nb_const_xmlDoc_ptr 1
+static xmlDoc * gen_const_xmlDoc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+ return(NULL);
+}
+static void des_const_xmlDoc_ptr(int no ATTRIBUTE_UNUSED, const xmlDoc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+}
+
static int
test_xmlEncodeSpecialChars(void) {
int test_ret = 0;
int mem_base;
xmlChar * ret_val;
- xmlDocPtr doc; /* the document containing the string */
+ xmlDoc * doc; /* the document containing the string */
int n_doc;
xmlChar * input; /* A string to convert to XML. */
int n_input;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
for (n_input = 0;n_input < gen_nb_const_xmlChar_ptr;n_input++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
input = gen_const_xmlChar_ptr(n_input, 1);
- ret_val = xmlEncodeSpecialChars(doc, (const xmlChar *)input);
+ ret_val = xmlEncodeSpecialChars((const xmlDoc *)doc, (const xmlChar *)input);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
des_const_xmlChar_ptr(n_input, (const xmlChar *)input, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -9499,21 +9506,21 @@ test_xmlGetDocEntity(void) {
int mem_base;
xmlEntityPtr ret_val;
- xmlDocPtr doc; /* the document referencing the entity */
+ xmlDoc * doc; /* the document referencing the entity */
int n_doc;
xmlChar * name; /* the entity name */
int n_name;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
- ret_val = xmlGetDocEntity(doc, (const xmlChar *)name);
+ ret_val = xmlGetDocEntity((const xmlDoc *)doc, (const xmlChar *)name);
desret_xmlEntityPtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -18270,7 +18277,7 @@ static int
test_xmlAddPrevSibling(void) {
int test_ret = 0;
-#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
+#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
int mem_base;
xmlNodePtr ret_val;
xmlNodePtr cur; /* the child node */
@@ -18403,11 +18410,11 @@ test_xmlAttrSerializeTxtContent(void) {
}
-#define gen_nb_const_xmlBufPtr 1
-static xmlBufPtr gen_const_xmlBufPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+#define gen_nb_const_xmlBuf_ptr 1
+static xmlBuf * gen_const_xmlBuf_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
return(NULL);
}
-static void des_const_xmlBufPtr(int no ATTRIBUTE_UNUSED, const xmlBufPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+static void des_const_xmlBuf_ptr(int no ATTRIBUTE_UNUSED, const xmlBuf * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
}
static int
@@ -18416,17 +18423,17 @@ test_xmlBufContent(void) {
int mem_base;
xmlChar * ret_val;
- xmlBufPtr buf; /* the buffer */
+ xmlBuf * buf; /* the buffer */
int n_buf;
- for (n_buf = 0;n_buf < gen_nb_const_xmlBufPtr;n_buf++) {
+ for (n_buf = 0;n_buf < gen_nb_const_xmlBuf_ptr;n_buf++) {
mem_base = xmlMemBlocks();
- buf = gen_const_xmlBufPtr(n_buf, 0);
+ buf = gen_const_xmlBuf_ptr(n_buf, 0);
- ret_val = xmlBufContent((const xmlBufPtr)buf);
+ ret_val = xmlBufContent((const xmlBuf *)buf);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_const_xmlBufPtr(n_buf, (const xmlBufPtr)buf, 0);
+ des_const_xmlBuf_ptr(n_buf, (const xmlBuf *)buf, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlBufContent",
@@ -18442,38 +18449,6 @@ test_xmlBufContent(void) {
}
-static int
-test_xmlBufEnd(void) {
- int test_ret = 0;
-
- int mem_base;
- xmlChar * ret_val;
- xmlBufPtr buf; /* the buffer */
- int n_buf;
-
- for (n_buf = 0;n_buf < gen_nb_const_xmlBufPtr;n_buf++) {
- mem_base = xmlMemBlocks();
- buf = gen_const_xmlBufPtr(n_buf, 0);
-
- ret_val = xmlBufEnd((const xmlBufPtr)buf);
- desret_xmlChar_ptr(ret_val);
- call_tests++;
- des_const_xmlBufPtr(n_buf, (const xmlBufPtr)buf, 0);
- xmlResetLastError();
- if (mem_base != xmlMemBlocks()) {
- printf("Leak of %d blocks found in xmlBufEnd",
- xmlMemBlocks() - mem_base);
- test_ret++;
- printf(" %d", n_buf);
- printf("\n");
- }
- }
- function_tests++;
-
- return(test_ret);
-}
-
-
#define gen_nb_xmlBufPtr 1
static xmlBufPtr gen_xmlBufPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
return(NULL);
@@ -18481,6 +18456,45 @@ static xmlBufPtr gen_xmlBufPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED)
static void des_xmlBufPtr(int no ATTRIBUTE_UNUSED, xmlBufPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
}
+static int
+test_xmlBufEnd(void) {
+ int test_ret = 0;
+
+ int mem_base;
+ xmlChar * ret_val;
+ xmlBufPtr buf; /* the buffer */
+ int n_buf;
+
+ for (n_buf = 0;n_buf < gen_nb_xmlBufPtr;n_buf++) {
+ mem_base = xmlMemBlocks();
+ buf = gen_xmlBufPtr(n_buf, 0);
+
+ ret_val = xmlBufEnd(buf);
+ desret_xmlChar_ptr(ret_val);
+ call_tests++;
+ des_xmlBufPtr(n_buf, buf, 0);
+ xmlResetLastError();
+ if (mem_base != xmlMemBlocks()) {
+ printf("Leak of %d blocks found in xmlBufEnd",
+ xmlMemBlocks() - mem_base);
+ test_ret++;
+ printf(" %d", n_buf);
+ printf("\n");
+ }
+ }
+ function_tests++;
+
+ return(test_ret);
+}
+
+
+#define gen_nb_const_xmlNode_ptr 1
+static xmlNode * gen_const_xmlNode_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+ return(NULL);
+}
+static void des_const_xmlNode_ptr(int no ATTRIBUTE_UNUSED, const xmlNode * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+}
+
static int
test_xmlBufGetNodeContent(void) {
int test_ret = 0;
@@ -18489,20 +18503,20 @@ test_xmlBufGetNodeContent(void) {
int ret_val;
xmlBufPtr buf; /* a buffer xmlBufPtr */
int n_buf;
- xmlNodePtr cur; /* the node being read */
+ xmlNode * cur; /* the node being read */
int n_cur;
for (n_buf = 0;n_buf < gen_nb_xmlBufPtr;n_buf++) {
- for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlNode_ptr;n_cur++) {
mem_base = xmlMemBlocks();
buf = gen_xmlBufPtr(n_buf, 0);
- cur = gen_xmlNodePtr(n_cur, 1);
+ cur = gen_const_xmlNode_ptr(n_cur, 1);
- ret_val = xmlBufGetNodeContent(buf, cur);
+ ret_val = xmlBufGetNodeContent(buf, (const xmlNode *)cur);
desret_int(ret_val);
call_tests++;
des_xmlBufPtr(n_buf, buf, 0);
- des_xmlNodePtr(n_cur, cur, 1);
+ des_const_xmlNode_ptr(n_cur, (const xmlNode *)cur, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlBufGetNodeContent",
@@ -18540,6 +18554,13 @@ test_xmlBufShrink(void) {
}
+#define gen_nb_const_xmlBufPtr 1
+static xmlBufPtr gen_const_xmlBufPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+ return(NULL);
+}
+static void des_const_xmlBufPtr(int no ATTRIBUTE_UNUSED, const xmlBufPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+}
+
static int
test_xmlBufUse(void) {
int test_ret = 0;
@@ -18720,11 +18741,11 @@ test_xmlBufferCat(void) {
}
-#define gen_nb_const_xmlBufferPtr 1
-static xmlBufferPtr gen_const_xmlBufferPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+#define gen_nb_const_xmlBuffer_ptr 1
+static xmlBuffer * gen_const_xmlBuffer_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
return(NULL);
}
-static void des_const_xmlBufferPtr(int no ATTRIBUTE_UNUSED, const xmlBufferPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+static void des_const_xmlBuffer_ptr(int no ATTRIBUTE_UNUSED, const xmlBuffer * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
}
static int
@@ -18733,17 +18754,17 @@ test_xmlBufferContent(void) {
int mem_base;
const xmlChar * ret_val;
- xmlBufferPtr buf; /* the buffer */
+ xmlBuffer * buf; /* the buffer */
int n_buf;
- for (n_buf = 0;n_buf < gen_nb_const_xmlBufferPtr;n_buf++) {
+ for (n_buf = 0;n_buf < gen_nb_const_xmlBuffer_ptr;n_buf++) {
mem_base = xmlMemBlocks();
- buf = gen_const_xmlBufferPtr(n_buf, 0);
+ buf = gen_const_xmlBuffer_ptr(n_buf, 0);
- ret_val = xmlBufferContent((const xmlBufferPtr)buf);
+ ret_val = xmlBufferContent((const xmlBuffer *)buf);
desret_const_xmlChar_ptr(ret_val);
call_tests++;
- des_const_xmlBufferPtr(n_buf, (const xmlBufferPtr)buf, 0);
+ des_const_xmlBuffer_ptr(n_buf, (const xmlBuffer *)buf, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlBufferContent",
@@ -18911,17 +18932,17 @@ test_xmlBufferLength(void) {
int mem_base;
int ret_val;
- xmlBufferPtr buf; /* the buffer */
+ xmlBuffer * buf; /* the buffer */
int n_buf;
- for (n_buf = 0;n_buf < gen_nb_const_xmlBufferPtr;n_buf++) {
+ for (n_buf = 0;n_buf < gen_nb_const_xmlBuffer_ptr;n_buf++) {
mem_base = xmlMemBlocks();
- buf = gen_const_xmlBufferPtr(n_buf, 0);
+ buf = gen_const_xmlBuffer_ptr(n_buf, 0);
- ret_val = xmlBufferLength((const xmlBufferPtr)buf);
+ ret_val = xmlBufferLength((const xmlBuffer *)buf);
desret_int(ret_val);
call_tests++;
- des_const_xmlBufferPtr(n_buf, (const xmlBufferPtr)buf, 0);
+ des_const_xmlBuffer_ptr(n_buf, (const xmlBuffer *)buf, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlBufferLength",
@@ -19407,16 +19428,16 @@ test_xmlCopyNode(void) {
int extended; /* if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) */
int n_extended;
- for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
for (n_extended = 0;n_extended < gen_nb_int;n_extended++) {
mem_base = xmlMemBlocks();
- node = gen_const_xmlNodePtr(n_node, 0);
+ node = gen_xmlNodePtr(n_node, 0);
extended = gen_int(n_extended, 1);
- ret_val = xmlCopyNode((const xmlNodePtr)node, extended);
+ ret_val = xmlCopyNode(node, extended);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 0);
+ des_xmlNodePtr(n_node, node, 0);
des_int(n_extended, extended, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -19444,14 +19465,14 @@ test_xmlCopyNodeList(void) {
xmlNodePtr node; /* the first node in the list. */
int n_node;
- for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
mem_base = xmlMemBlocks();
- node = gen_const_xmlNodePtr(n_node, 0);
+ node = gen_xmlNodePtr(n_node, 0);
- ret_val = xmlCopyNodeList((const xmlNodePtr)node);
+ ret_val = xmlCopyNodeList(node);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 0);
+ des_xmlNodePtr(n_node, node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlCopyNodeList",
@@ -19876,18 +19897,18 @@ test_xmlDocCopyNode(void) {
int extended; /* if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) */
int n_extended;
- for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
for (n_extended = 0;n_extended < gen_nb_int;n_extended++) {
mem_base = xmlMemBlocks();
- node = gen_const_xmlNodePtr(n_node, 0);
+ node = gen_xmlNodePtr(n_node, 0);
doc = gen_xmlDocPtr(n_doc, 1);
extended = gen_int(n_extended, 2);
- ret_val = xmlDocCopyNode((const xmlNodePtr)node, doc, extended);
+ ret_val = xmlDocCopyNode(node, doc, extended);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 0);
+ des_xmlNodePtr(n_node, node, 0);
des_xmlDocPtr(n_doc, doc, 1);
des_int(n_extended, extended, 2);
xmlResetLastError();
@@ -19921,16 +19942,16 @@ test_xmlDocCopyNodeList(void) {
int n_node;
for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
- for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
mem_base = xmlMemBlocks();
doc = gen_xmlDocPtr(n_doc, 0);
- node = gen_const_xmlNodePtr(n_node, 1);
+ node = gen_xmlNodePtr(n_node, 1);
- ret_val = xmlDocCopyNodeList(doc, (const xmlNodePtr)node);
+ ret_val = xmlDocCopyNodeList(doc, node);
desret_xmlNodePtr(ret_val);
call_tests++;
des_xmlDocPtr(n_doc, doc, 0);
- des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 1);
+ des_xmlNodePtr(n_node, node, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlDocCopyNodeList",
@@ -20255,17 +20276,17 @@ test_xmlDocGetRootElement(void) {
int mem_base;
xmlNodePtr ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
- ret_val = xmlDocGetRootElement(doc);
+ ret_val = xmlDocGetRootElement((const xmlDoc *)doc);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlDocGetRootElement",
@@ -20459,17 +20480,17 @@ test_xmlGetDocCompressMode(void) {
int mem_base;
int ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
- ret_val = xmlGetDocCompressMode(doc);
+ ret_val = xmlGetDocCompressMode((const xmlDoc *)doc);
desret_int(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlGetDocCompressMode",
@@ -20491,17 +20512,17 @@ test_xmlGetIntSubset(void) {
int mem_base;
xmlDtdPtr ret_val;
- xmlDocPtr doc; /* the document pointer */
+ xmlDoc * doc; /* the document pointer */
int n_doc;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
- ret_val = xmlGetIntSubset(doc);
+ ret_val = xmlGetIntSubset((const xmlDoc *)doc);
desret_xmlDtdPtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlGetIntSubset",
@@ -20523,17 +20544,17 @@ test_xmlGetLastChild(void) {
int mem_base;
xmlNodePtr ret_val;
- xmlNodePtr parent; /* the parent node */
+ xmlNode * parent; /* the parent node */
int n_parent;
- for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
+ for (n_parent = 0;n_parent < gen_nb_const_xmlNode_ptr;n_parent++) {
mem_base = xmlMemBlocks();
- parent = gen_xmlNodePtr(n_parent, 0);
+ parent = gen_const_xmlNode_ptr(n_parent, 0);
- ret_val = xmlGetLastChild(parent);
+ ret_val = xmlGetLastChild((const xmlNode *)parent);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_xmlNodePtr(n_parent, parent, 0);
+ des_const_xmlNode_ptr(n_parent, (const xmlNode *)parent, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlGetLastChild",
@@ -20555,17 +20576,17 @@ test_xmlGetLineNo(void) {
int mem_base;
long ret_val;
- xmlNodePtr node; /* valid node */
+ xmlNode * node; /* valid node */
int n_node;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
- ret_val = xmlGetLineNo(node);
+ ret_val = xmlGetLineNo((const xmlNode *)node);
desret_long(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlGetLineNo",
@@ -20587,21 +20608,21 @@ test_xmlGetNoNsProp(void) {
int mem_base;
xmlChar * ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
xmlChar * name; /* the attribute name */
int n_name;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
- ret_val = xmlGetNoNsProp(node, (const xmlChar *)name);
+ ret_val = xmlGetNoNsProp((const xmlNode *)node, (const xmlChar *)name);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -20627,17 +20648,17 @@ test_xmlGetNodePath(void) {
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
int mem_base;
xmlChar * ret_val;
- xmlNodePtr node; /* a node */
+ xmlNode * node; /* a node */
int n_node;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
- ret_val = xmlGetNodePath(node);
+ ret_val = xmlGetNodePath((const xmlNode *)node);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlGetNodePath",
@@ -20670,25 +20691,25 @@ test_xmlGetNsProp(void) {
int mem_base;
xmlChar * ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
xmlChar * name; /* the attribute name */
int n_name;
xmlChar * nameSpace; /* the URI of the namespace */
int n_nameSpace;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
for (n_nameSpace = 0;n_nameSpace < gen_nb_const_xmlChar_ptr;n_nameSpace++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
nameSpace = gen_const_xmlChar_ptr(n_nameSpace, 2);
- ret_val = xmlGetNsProp(node, (const xmlChar *)name, (const xmlChar *)nameSpace);
+ ret_val = xmlGetNsProp((const xmlNode *)node, (const xmlChar *)name, (const xmlChar *)nameSpace);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
des_const_xmlChar_ptr(n_nameSpace, (const xmlChar *)nameSpace, 2);
xmlResetLastError();
@@ -20716,21 +20737,21 @@ test_xmlGetProp(void) {
int mem_base;
xmlChar * ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
xmlChar * name; /* the attribute name */
int n_name;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
- ret_val = xmlGetProp(node, (const xmlChar *)name);
+ ret_val = xmlGetProp((const xmlNode *)node, (const xmlChar *)name);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -20755,25 +20776,25 @@ test_xmlHasNsProp(void) {
int mem_base;
xmlAttrPtr ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
xmlChar * name; /* the attribute name */
int n_name;
xmlChar * nameSpace; /* the URI of the namespace */
int n_nameSpace;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
for (n_nameSpace = 0;n_nameSpace < gen_nb_const_xmlChar_ptr;n_nameSpace++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
nameSpace = gen_const_xmlChar_ptr(n_nameSpace, 2);
- ret_val = xmlHasNsProp(node, (const xmlChar *)name, (const xmlChar *)nameSpace);
+ ret_val = xmlHasNsProp((const xmlNode *)node, (const xmlChar *)name, (const xmlChar *)nameSpace);
desret_xmlAttrPtr(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
des_const_xmlChar_ptr(n_nameSpace, (const xmlChar *)nameSpace, 2);
xmlResetLastError();
@@ -20801,21 +20822,21 @@ test_xmlHasProp(void) {
int mem_base;
xmlAttrPtr ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
xmlChar * name; /* the attribute name */
int n_name;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
- ret_val = xmlHasProp(node, (const xmlChar *)name);
+ ret_val = xmlHasProp((const xmlNode *)node, (const xmlChar *)name);
desret_xmlAttrPtr(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -20840,17 +20861,17 @@ test_xmlIsBlankNode(void) {
int mem_base;
int ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
- ret_val = xmlIsBlankNode(node);
+ ret_val = xmlIsBlankNode((const xmlNode *)node);
desret_int(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlIsBlankNode",
@@ -21479,21 +21500,21 @@ test_xmlNewDocText(void) {
int mem_base;
xmlNodePtr ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
xmlChar * content; /* the text content */
int n_content;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
- ret_val = xmlNewDocText(doc, (const xmlChar *)content);
+ ret_val = xmlNewDocText((const xmlDoc *)doc, (const xmlChar *)content);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -21937,21 +21958,21 @@ test_xmlNewReference(void) {
int mem_base;
xmlNodePtr ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
xmlChar * name; /* the reference name, or the reference string with & and ; */
int n_name;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
- ret_val = xmlNewReference(doc, (const xmlChar *)name);
+ ret_val = xmlNewReference((const xmlDoc *)doc, (const xmlChar *)name);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -22221,20 +22242,20 @@ test_xmlNodeBufGetContent(void) {
int ret_val;
xmlBufferPtr buffer; /* a buffer */
int n_buffer;
- xmlNodePtr cur; /* the node being read */
+ xmlNode * cur; /* the node being read */
int n_cur;
for (n_buffer = 0;n_buffer < gen_nb_xmlBufferPtr;n_buffer++) {
- for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlNode_ptr;n_cur++) {
mem_base = xmlMemBlocks();
buffer = gen_xmlBufferPtr(n_buffer, 0);
- cur = gen_xmlNodePtr(n_cur, 1);
+ cur = gen_const_xmlNode_ptr(n_cur, 1);
- ret_val = xmlNodeBufGetContent(buffer, cur);
+ ret_val = xmlNodeBufGetContent(buffer, (const xmlNode *)cur);
desret_int(ret_val);
call_tests++;
des_xmlBufferPtr(n_buffer, buffer, 0);
- des_xmlNodePtr(n_cur, cur, 1);
+ des_const_xmlNode_ptr(n_cur, (const xmlNode *)cur, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNodeBufGetContent",
@@ -22387,22 +22408,22 @@ test_xmlNodeGetBase(void) {
int mem_base;
xmlChar * ret_val;
- xmlDocPtr doc; /* the document the node pertains to */
+ xmlDoc * doc; /* the document the node pertains to */
int n_doc;
- xmlNodePtr cur; /* the node being checked */
+ xmlNode * cur; /* the node being checked */
int n_cur;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
- for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlNode_ptr;n_cur++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
- cur = gen_xmlNodePtr(n_cur, 1);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
+ cur = gen_const_xmlNode_ptr(n_cur, 1);
- ret_val = xmlNodeGetBase(doc, cur);
+ ret_val = xmlNodeGetBase((const xmlDoc *)doc, (const xmlNode *)cur);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
- des_xmlNodePtr(n_cur, cur, 1);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
+ des_const_xmlNode_ptr(n_cur, (const xmlNode *)cur, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNodeGetBase",
@@ -22426,17 +22447,17 @@ test_xmlNodeGetContent(void) {
int mem_base;
xmlChar * ret_val;
- xmlNodePtr cur; /* the node being read */
+ xmlNode * cur; /* the node being read */
int n_cur;
- for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlNode_ptr;n_cur++) {
mem_base = xmlMemBlocks();
- cur = gen_xmlNodePtr(n_cur, 0);
+ cur = gen_const_xmlNode_ptr(n_cur, 0);
- ret_val = xmlNodeGetContent(cur);
+ ret_val = xmlNodeGetContent((const xmlNode *)cur);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlNodePtr(n_cur, cur, 0);
+ des_const_xmlNode_ptr(n_cur, (const xmlNode *)cur, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNodeGetContent",
@@ -22458,17 +22479,17 @@ test_xmlNodeGetLang(void) {
int mem_base;
xmlChar * ret_val;
- xmlNodePtr cur; /* the node being checked */
+ xmlNode * cur; /* the node being checked */
int n_cur;
- for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlNode_ptr;n_cur++) {
mem_base = xmlMemBlocks();
- cur = gen_xmlNodePtr(n_cur, 0);
+ cur = gen_const_xmlNode_ptr(n_cur, 0);
- ret_val = xmlNodeGetLang(cur);
+ ret_val = xmlNodeGetLang((const xmlNode *)cur);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlNodePtr(n_cur, cur, 0);
+ des_const_xmlNode_ptr(n_cur, (const xmlNode *)cur, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNodeGetLang",
@@ -22490,17 +22511,17 @@ test_xmlNodeGetSpacePreserve(void) {
int mem_base;
int ret_val;
- xmlNodePtr cur; /* the node being checked */
+ xmlNode * cur; /* the node being checked */
int n_cur;
- for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlNode_ptr;n_cur++) {
mem_base = xmlMemBlocks();
- cur = gen_xmlNodePtr(n_cur, 0);
+ cur = gen_const_xmlNode_ptr(n_cur, 0);
- ret_val = xmlNodeGetSpacePreserve(cur);
+ ret_val = xmlNodeGetSpacePreserve((const xmlNode *)cur);
desret_int(ret_val);
call_tests++;
- des_xmlNodePtr(n_cur, cur, 0);
+ des_const_xmlNode_ptr(n_cur, (const xmlNode *)cur, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNodeGetSpacePreserve",
@@ -22522,17 +22543,17 @@ test_xmlNodeIsText(void) {
int mem_base;
int ret_val;
- xmlNodePtr node; /* the node */
+ xmlNode * node; /* the node */
int n_node;
- for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_node = 0;n_node < gen_nb_const_xmlNode_ptr;n_node++) {
mem_base = xmlMemBlocks();
- node = gen_xmlNodePtr(n_node, 0);
+ node = gen_const_xmlNode_ptr(n_node, 0);
- ret_val = xmlNodeIsText(node);
+ ret_val = xmlNodeIsText((const xmlNode *)node);
desret_int(ret_val);
call_tests++;
- des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlNode_ptr(n_node, (const xmlNode *)node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNodeIsText",
@@ -22555,26 +22576,26 @@ test_xmlNodeListGetRawString(void) {
#if defined(LIBXML_TREE_ENABLED)
int mem_base;
xmlChar * ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
- xmlNodePtr list; /* a Node list */
+ xmlNode * list; /* a Node list */
int n_list;
int inLine; /* should we replace entity contents or show their external form */
int n_inLine;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
- for (n_list = 0;n_list < gen_nb_xmlNodePtr;n_list++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
+ for (n_list = 0;n_list < gen_nb_const_xmlNode_ptr;n_list++) {
for (n_inLine = 0;n_inLine < gen_nb_int;n_inLine++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
- list = gen_xmlNodePtr(n_list, 1);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
+ list = gen_const_xmlNode_ptr(n_list, 1);
inLine = gen_int(n_inLine, 2);
- ret_val = xmlNodeListGetRawString(doc, list, inLine);
+ ret_val = xmlNodeListGetRawString((const xmlDoc *)doc, (const xmlNode *)list, inLine);
desret_xmlChar_ptr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
- des_xmlNodePtr(n_list, list, 1);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
+ des_const_xmlNode_ptr(n_list, (const xmlNode *)list, 1);
des_int(n_inLine, inLine, 2);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -22604,24 +22625,24 @@ test_xmlNodeListGetString(void) {
xmlChar * ret_val;
xmlDocPtr doc; /* the document */
int n_doc;
- xmlNodePtr list; /* a Node list */
+ xmlNode * list; /* a Node list */
int n_list;
int inLine; /* should we replace entity contents or show their external form */
int n_inLine;
for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
- for (n_list = 0;n_list < gen_nb_xmlNodePtr;n_list++) {
+ for (n_list = 0;n_list < gen_nb_const_xmlNode_ptr;n_list++) {
for (n_inLine = 0;n_inLine < gen_nb_int;n_inLine++) {
mem_base = xmlMemBlocks();
doc = gen_xmlDocPtr(n_doc, 0);
- list = gen_xmlNodePtr(n_list, 1);
+ list = gen_const_xmlNode_ptr(n_list, 1);
inLine = gen_int(n_inLine, 2);
- ret_val = xmlNodeListGetString(doc, list, inLine);
+ ret_val = xmlNodeListGetString(doc, (const xmlNode *)list, inLine);
desret_xmlChar_ptr(ret_val);
call_tests++;
des_xmlDocPtr(n_doc, doc, 0);
- des_xmlNodePtr(n_list, list, 1);
+ des_const_xmlNode_ptr(n_list, (const xmlNode *)list, 1);
des_int(n_inLine, inLine, 2);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -23749,21 +23770,21 @@ test_xmlStringGetNodeList(void) {
int mem_base;
xmlNodePtr ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
xmlChar * value; /* the value of the attribute */
int n_value;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
value = gen_const_xmlChar_ptr(n_value, 1);
- ret_val = xmlStringGetNodeList(doc, (const xmlChar *)value);
+ ret_val = xmlStringGetNodeList((const xmlDoc *)doc, (const xmlChar *)value);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -23788,25 +23809,25 @@ test_xmlStringLenGetNodeList(void) {
int mem_base;
xmlNodePtr ret_val;
- xmlDocPtr doc; /* the document */
+ xmlDoc * doc; /* the document */
int n_doc;
xmlChar * value; /* the value of the text */
int n_value;
int len; /* the length of the string value */
int n_len;
- for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
+ for (n_doc = 0;n_doc < gen_nb_const_xmlDoc_ptr;n_doc++) {
for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
for (n_len = 0;n_len < gen_nb_int;n_len++) {
mem_base = xmlMemBlocks();
- doc = gen_xmlDocPtr(n_doc, 0);
+ doc = gen_const_xmlDoc_ptr(n_doc, 0);
value = gen_const_xmlChar_ptr(n_value, 1);
len = gen_int(n_len, 2);
- ret_val = xmlStringLenGetNodeList(doc, (const xmlChar *)value, len);
+ ret_val = xmlStringLenGetNodeList((const xmlDoc *)doc, (const xmlChar *)value, len);
desret_xmlNodePtr(ret_val);
call_tests++;
- des_xmlDocPtr(n_doc, doc, 0);
+ des_const_xmlDoc_ptr(n_doc, (const xmlDoc *)doc, 0);
des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
des_int(n_len, len, 2);
xmlResetLastError();
@@ -24009,7 +24030,7 @@ static int
test_xmlValidateNCName(void) {
int test_ret = 0;
-#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
+#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
#ifdef LIBXML_TREE_ENABLED
int mem_base;
int ret_val;