DOMNodeIterators
are used to step through a set of nodes, e.g.
More...
#include <xercesc/dom/DOMNodeIterator.hpp>
DOMNodeIterators
are used to step through a set of nodes, e.g.
the set of nodes in a DOMNodeList
, the document subtree governed by a particular DOMNode
, the results of a query, or any other set of nodes. The set of nodes to be iterated is determined by the implementation of the DOMNodeIterator
. DOM Level 2 specifies a single DOMNodeIterator
implementation for document-order traversal of a document subtree. Instances of these DOMNodeIterators
are created by calling DOMDocumentTraversal
.createNodeIterator()
.
See also the Document Object Model (DOM) Level 2 Traversal and Range Specification.
- Since
- DOM Level 2
◆ DOMNodeIterator() [1/2]
DOMNodeIterator::DOMNodeIterator |
( |
| ) |
|
|
protected |
◆ DOMNodeIterator() [2/2]
◆ ~DOMNodeIterator()
virtual DOMNodeIterator::~DOMNodeIterator |
( |
| ) |
|
|
virtual |
◆ detach()
virtual void DOMNodeIterator::detach |
( |
| ) |
|
|
pure virtual |
Detaches the DOMNodeIterator
from the set which it iterated over, releasing any computational resources and placing the DOMNodeIterator
in the INVALID state.
After detach
has been invoked, calls to nextNode
or previousNode
will raise the exception INVALID_STATE_ERR.
- Since
- DOM Level 2
◆ getExpandEntityReferences()
virtual bool DOMNodeIterator::getExpandEntityReferences |
( |
| ) |
|
|
pure virtual |
Return the expandEntityReferences flag.
The value of this flag determines whether the children of entity reference nodes are visible to the DOMNodeIterator
. If false, these children and their descendants will be rejected. Note that this rejection takes precedence over whatToShow
and the filter. Also note that this is currently the only situation where DOMNodeIterators
may reject a complete subtree rather than skipping individual nodes.
To produce a view of the document that has entity references expanded and does not expose the entity reference node itself, use the whatToShow
flags to hide the entity reference node and set expandEntityReferences
to true when creating the DOMNodeIterator
. To produce a view of the document that has entity reference nodes but no entity expansion, use the whatToShow
flags to show the entity reference node and set expandEntityReferences
to false.
- Since
- DOM Level 2
◆ getFilter()
◆ getRoot()
virtual DOMNode * DOMNodeIterator::getRoot |
( |
| ) |
|
|
pure virtual |
The root
node of the DOMNodeIterator
, as specified when it was created.
- Since
- DOM Level 2
◆ getWhatToShow()
Return which node types are presented via the iterator.
This attribute determines which node types are presented via the DOMNodeIterator
. The available set of constants is defined in the DOMNodeFilter
interface. Nodes not accepted by whatToShow
will be skipped, but their children may still be considered. Note that this skip takes precedence over the filter, if any.
- Since
- DOM Level 2
◆ nextNode()
virtual DOMNode * DOMNodeIterator::nextNode |
( |
| ) |
|
|
pure virtual |
Returns the next node in the set and advances the position of the DOMNodeIterator
in the set.
After a DOMNodeIterator
is created, the first call to nextNode()
returns the first node in the set.
- Returns
- The next
DOMNode
in the set being iterated over, or null
if there are no more members in that set.
- Exceptions
-
DOMException | INVALID_STATE_ERR: Raised if this method is called after the detach method was invoked. |
- Since
- DOM Level 2
◆ previousNode()
virtual DOMNode * DOMNodeIterator::previousNode |
( |
| ) |
|
|
pure virtual |
Returns the previous node in the set and moves the position of the DOMNodeIterator
backwards in the set.
- Returns
- The previous
DOMNode
in the set being iterated over, or null
if there are no more members in that set.
- Exceptions
-
DOMException | INVALID_STATE_ERR: Raised if this method is called after the detach method was invoked. |
- Since
- DOM Level 2
◆ release()
virtual void DOMNodeIterator::release |
( |
| ) |
|
|
pure virtual |
Called to indicate that this NodeIterator is no longer in use and that the implementation may relinquish any resources associated with it.
(release() will call detach() where appropriate)
Access to a released object will lead to unexpected result.
The documentation for this class was generated from the following file: