📄 ixml.h
字号:
* @return [Node*] A pointer to the last child {\bf Node} or {\tt NULL} if
* the {\bf Node} does not have any children.
*/
EXPORT_SPEC IXML_Node*
ixmlNode_getLastChild(IXML_Node *nodeptr
/** The {\bf Node} from which to retrieve the last
child. */
);
/** Retrieves the sibling {\bf Node} immediately preceding this {\bf Node}.
*
* @return [Node*] A pointer to the previous sibling {\bf Node} or
* {\tt NULL} if no such {\bf Node} exists.
*/
EXPORT_SPEC IXML_Node*
ixmlNode_getPreviousSibling(IXML_Node *nodeptr
/** The {\bf Node} for which to retrieve the
previous sibling. */
);
/** Retrieves the sibling {\bf Node} immediately following this {\bf Node}.
*
* @return [Node*] A pointer to the next sibling {\bf Node} or {\tt NULL}
* if no such {\bf Node} exists.
*/
EXPORT_SPEC IXML_Node*
ixmlNode_getNextSibling(IXML_Node *nodeptr
/** The {\bf Node} from which to retrieve the next
sibling. */
);
/** Retrieves the attributes of a {\bf Node}, if it is an {\bf Element} node,
* in a {\bf NamedNodeMap} structure.
*
* @return [NamedNodeMap*] A {\bf NamedNodeMap} of the attributes or
* {\tt NULL}.
*/
EXPORT_SPEC IXML_NamedNodeMap*
ixmlNode_getAttributes(IXML_Node *nodeptr
/** The {\bf Node} from which to retrieve the
attributes. */
);
/** Retrieves the document object associated with this {\bf Node}. This
* owner document {\bf Node} allows other {\bf Node}s to be created in the
* context of this document. Note that {\bf Document} nodes do not have
* an owner document.
*
* @return [Document*] A pointer to the owning {\bf Document} or
* {\tt NULL}, if the {\bf Node} does not have an owner.
*/
EXPORT_SPEC IXML_Document*
ixmlNode_getOwnerDocument(IXML_Node *nodeptr
/** The {\bf Node} from which to retrieve the
owner document. */
);
/** Retrieves the namespace URI for a {\bf Node} as a {\bf DOMString}. Only
* {\bf Node}s of type {\tt eELEMENT_NODE} or {\tt eATTRIBUTE_NODE} can
* have a namespace URI. {\bf Node}s created through the {\bf Document}
* interface will only contain a namespace if created using
* {\bf ixmlDocument_createElementNS}.
*
* @return [const DOMString] A {\bf DOMString} representing the URI of the
* namespace or {\tt NULL}.
*/
EXPORT_SPEC const DOMString
ixmlNode_getNamespaceURI(IXML_Node *nodeptr
/** The {\bf Node} for which to retrieve the
namespace. */
);
/** Retrieves the namespace prefix, if present. The prefix is the name
* used as an alias for the namespace URI for this element. Only
* {\bf Node}s of type {\tt eELEMENT_NODE} or {\tt eATTRIBUTE_NODE} can have
* a prefix. {\bf Node}s created through the {\bf Document} interface will
* only contain a prefix if created using {\bf ixmlDocument_createElementNS}.
*
* @return [DOMString] A {\bf DOMString} representing the namespace prefix
* or {\tt NULL}.
*/
EXPORT_SPEC DOMString
ixmlNode_getPrefix(IXML_Node *nodeptr
/** The {\bf Node} from which to retrieve the prefix. */
);
/** Retrieves the local name of a {\bf Node}, if present. The local name is
* the tag name without the namespace prefix. Only {\bf Node}s of type
* {\tt eELEMENT_NODE} or {\tt eATTRIBUTE_NODE} can have a local name.
* {\Bf Node}s created through the {\bf Document} interface will only
* contain a local name if created using {\bf ixmlDocument_createElementNS}.
*
* @return [const DOMString] A {\bf DOMString} representing the local name
* of the {\bf Element} or {\tt NULL}.
*/
EXPORT_SPEC const DOMString
ixmlNode_getLocalName(IXML_Node *nodeptr
/** The {\bf Node} from which to retrieve the local
name. */
);
/** Inserts a new child {\bf Node} before the existing child {\bf Node}.
* {\bf refChild} can be {\tt NULL}, which inserts {\bf newChild} at the
* end of the list of children. Note that the {\bf Node} (or {\bf Node}s)
* in {\bf newChild} must already be owned by the owner document (or have no
* owner at all) of {\bf nodeptr} for insertion. If not, the {\bf Node}
* (or {\bf Node}s) must be imported into the document using
* {\bf ixmlDocument_importNode}. If {\bf newChild} is already in the tree,
* it is removed first.
*
* @return [int] An integer representing one of the following:
* \begin{itemize}
* \item {\tt IXML_SUCCESS}: The operation completed successfully.
* \item {\tt IXML_INVALID_PARAMETER}: Either {\bf nodeptr} or
* {\bf newChild} is {\tt NULL}.
* \item {\tt IXML_HIERARCHY_REQUEST_ERR}: The type of the {\bf Node}
* does not allow children of the type of {\bf newChild}.
* \item {\tt IXML_WRONG_DOCUMENT_ERR}: {\bf newChild} has an owner
* document that does not match the owner of {\bf nodeptr}.
* \item {\tt IXML_NO_MODIFICATION_ALLOWED_ERR}: {\bf nodeptr} is
* read-only or the parent of the {\bf Node} being inserted is
* read-only.
* \item {\tt IXML_NOT_FOUND_ERR}: {\bf refChild} is not a child of
* {\bf nodeptr}.
* \end{itemize}
*/
EXPORT_SPEC int
ixmlNode_insertBefore(IXML_Node *nodeptr,
/** The parent of the {\bf Node} before which to
insert the new child. */
IXML_Node* newChild,
/** The {\bf Node} to insert into the tree. */
IXML_Node* refChild
/** The reference child where the new {\bf Node}
should be inserted. The new {\bf Node} will
appear directly before the reference child. */
);
/** Replaces an existing child {\bf Node} with a new child {\bf Node} in
* the list of children of a {\bf Node}. If {\bf newChild} is already in
* the tree, it will first be removed. {\bf returnNode} will contain the
* {\bf oldChild} {\bf Node}, appropriately removed from the tree (i.e. it
* will no longer have an owner document).
*
* @return [int] An integer representing one of the following:
* \begin{itemize}
* \item {\tt IXML_SUCCESS}: The operation completed successfully.
* \item {\tt IXML_INVALID_PARAMTER: Either {\bf nodeptr}, {\bf
* newChild}, or {\bf oldChild} is {\tt NULL}.
* \item {\tt IXML_HIERARCHY_REQUEST_ERR}: The {\bf newChild} is not
* a type of {\bf Node} that can be inserted into this tree or
* {\bf newChild} is an ancestor of {\bf nodePtr}.
* \item {\tt IXML_WRONG_DOCUMENT_ERR}: {\bf newChild} was created from
* a different document than {\bf nodeptr}.
* \item {\tt IXML_NO_MODIFICATION_ALLOWED_ERR}: {\bf nodeptr} or
* its parent is read-only.
* \item {\tt IXML_NOT_FOUND_ERR}: {\bf oldChild} is not a child of
* {\bf nodeptr}.
* \end{itemize}
*/
EXPORT_SPEC int
ixmlNode_replaceChild(IXML_Node *nodeptr,
/** The parent of the {\bf Node} which contains the
child to replace. */
IXML_Node* newChild,
/** The child with which to replace {\bf oldChild}. */
IXML_Node* oldChild,
/** The child to replace with {\bf newChild}. */
IXML_Node** returnNode
/** Pointer to a {\bf Node} to place the removed {\bf
oldChild} {\bf Node}. */
);
/** Removes a child from the list of children of a {\bf Node}.
* {\bf returnNode} will contain the {\bf oldChild} {\bf Node},
* appropriately removed from the tree (i.e. it will no longer have an
* owner document).
*
* @return [int] An integer representing one of the following:
* \begin{itemize}
* \item {\tt IXML_SUCCESS}: The operation completed successfully.
* \item {\tt IXML_INVALID_PARAMETER}: Either {\bf nodeptr} or
* {\bf oldChild} is {\tt NULL}.
* \item {\tt IXML_NO_MODIFICATION_ALLOWED_ERR}: {\bf nodeptr} or its
* parent is read-only.
* \item {\tt IXML_NOT_FOUND_ERR}: {\bf oldChild} is not among the
* children of {\bf nodeptr}.
* \end{itemize}
*/
EXPORT_SPEC int
ixmlNode_removeChild(IXML_Node *nodeptr,
/** The parent of the child to remove. */
IXML_Node* oldChild,
/** The child {\bf Node} to remove. */
IXML_Node **returnNode
/** Pointer to a {\bf Node} to place the removed {\bf
oldChild} {\bf Node}. */
);
/** Appends a child {\bf Node} to the list of children of a {\bf Node}. If
* {\bf newChild} is already in the tree, it is removed first.
*
* @return [int] An integer representing one of the following:
* \begin{itemize}
* \item {\tt IXML_SUCCESS}: The operation completed successfully.
* \item {\tt IXML_INVALID_PARAMETER}: Either {\bf nodeptr} or
* {\bf newChild} is {\tt NULL}.
* \item {\tt IXML_HIERARCHY_REQUEST_ERR}: {\bf newChild} is of a type
* that cannot be added as a child of {\bf nodeptr} or
* {\bf newChild} is an ancestor of {\bf nodeptr}.
* \item {\tt IXML_WRONG_DOCUMENT_ERR}: {\bf newChild} was created from
* a different document than {\bf nodeptr}.
* \item {\tt IXML_NO_MODIFICATION_ALLOWED_ERR}: {\bf nodeptr} is a
* read-only {\bf Node}.
*/
EXPORT_SPEC int
ixmlNode_appendChild(IXML_Node *nodeptr,
/** The {\bf Node} in which to append the new child. */
IXML_Node* newChild
/** The new child to append. */
);
/** Queries whether or not a {\bf Node} has children.
*
* @return [BOOL] {\tt TRUE} if the {\bf Node} has one or more children
* otherwise {\tt FALSE}.
*/
EXPORT_SPEC BOOL
ixmlNode_hasChildNodes(IXML_Node *nodeptr
/** The {\bf Node} to query for children. */
);
/** Clones a {\bf Node}. The new {\bf Node} does not have a parent. The
* {\bf deep} parameter controls whether the subtree of the {\bf Node} is
* also cloned. For details on cloning specific types of {\bf Node}s,
* refer to the DOM2-Core recommendation.
*
* @return [Node*] A clone of {\bf nodeptr} or {\tt NULL}.
*/
EXPORT_SPEC IXML_Node*
ixmlNode_cloneNode(IXML_Node *nodeptr,
/** The {\bf Node} to clone. */
BOOL deep
/** {\tt TRUE} to clone the subtree also or {\tt FALSE}
to clone only {\bf nodeptr}. */
);
/** Queries whether this {\bf Node} has attributes. Note that only
* {\bf Element} nodes have attributes.
*
* @return [BOOL] {\tt TRUE} if the {\bf Node} has attributes otherwise
* {\tt FALSE}.
*/
EXPORT_SPEC BOOL
ixmlNode_hasAttributes(IXML_Node *node
/** The {\bf Node} to query for attributes. */
);
/** Frees a {\bf Node} and all {\bf Node}s in its subtree.
*
* @return [void] This function does not return a value.
*/
EXPORT_SPEC void
ixmlNode_free(IXML_Node *IXML_Node
/** The {\bf Node} to free. */
);
//@}
/*================================================================
*
* Attribute interfaces
*
*
*=================================================================*/
/**@name Interface {\it Attr}
* The {\bf Attr} interface represents an attribute of an {\bf Element}.
* The document type definition (DTD) or schema usually dictate the
* allowable attributes and values for a particular element. For more
* information, refer to the {\it Interface Attr} section in the DOM2-Core.
*/
//@{
/** Frees an {\bf Attr} node.
*
* @return [void] This function does not return a value.
*/
EXPORT_SPEC void
ixmlAttr_free(IXML_Attr *attrNode
/** The {\bf Attr} node to free. */
);
//@}
/*================================================================
*
* CDATASection interfaces
*
*
*=================================================================*/
/**@name Interface {\it CDATASection}
* The {\bf CDATASection} is used to escape blocks of text containing
* characters that would otherwise be regarded as markup. CDATA sections
* cannot be nested. Their primary purpose is for including material such
* XML fragments, without needing to escape all the delimiters. For more
* information, refer to the {\it Interface CDATASection} section in the
* DOM2-Core.
*/
//@{
/** Initializes a {\bf CDATASection} node.
*
* @return [void] This function does not return a value.
*/
EXPORT_SPEC void
ixmlCDATASection_init(IXML_CDATASection *nodeptr
/** The {\bf CDATASection} node to initialize. */
);
/** Frees a {\bf CDATASection} node.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -