Package org.htmlunit.xpath.axes
Class ChildIterator
java.lang.Object
org.htmlunit.xpath.Expression
org.htmlunit.xpath.patterns.NodeTest
org.htmlunit.xpath.axes.PredicatedNodeTest
org.htmlunit.xpath.axes.LocPathIterator
org.htmlunit.xpath.axes.ChildIterator
- All Implemented Interfaces:
Cloneable
,SourceLocator
,PathComponent
,SubContextList
,ExpressionNode
,DTMIterator
,XPathVisitable
This class implements an optimized iterator for "node()" patterns, that is, any children of the
context node.
- See Also:
-
Field Summary
Fields inherited from class org.htmlunit.xpath.axes.LocPathIterator
m_cdtm, m_clones, m_context, m_currentContextNode, m_execContext, m_lastFetched, m_length, m_pos, m_stackFrame
Fields inherited from class org.htmlunit.xpath.axes.PredicatedNodeTest
DEBUG_PREDICATECOUNTING, m_foundLast, m_lpi, m_predCount, m_predicateIndex, m_proximityPositions
Fields inherited from class org.htmlunit.xpath.patterns.NodeTest
m_name, m_whatToShow, SCORE_NODETEST, SCORE_NONE, SCORE_NSWILD, SCORE_OTHER, SCORE_QNAME, SHOW_BYFUNCTION, WILD
Fields inherited from interface org.htmlunit.xpath.xml.dtm.DTMIterator
FILTER_ACCEPT, FILTER_SKIP
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
asNode
(XPathContext xctxt) Return the first node out of the nodeset, if this expression is a nodeset expression.int
getAxis()
Returns the axis being iterated, if it is known.int
nextNode()
Returns the next node in the set and advances the position of the iterator in the set.Methods inherited from class org.htmlunit.xpath.axes.LocPathIterator
asIterator, bool, callVisitors, cloneWithReset, detach, execute, getAnalysisBits, getCurrentNode, getCurrentPos, getDTM, getDTMManager, getExpandEntityReferences, getIsTopLevel, getLastPos, getLength, getPrefixResolver, getRoot, getWhatToShow, getXPathContext, incrementCurrentPos, isDocOrdered, isFresh, item, previousNode, reset, returnNextNode, runTo, setCurrentPos, setIsTopLevel, setRoot, setShouldCacheNodes
Methods inherited from class org.htmlunit.xpath.axes.PredicatedNodeTest
acceptNode, callPredicateVisitors, canTraverseOutsideSubtree, clone, countProximityPosition, deepEquals, executePredicates, getPredicate, getPredicateCount, getProximityPosition, getProximityPosition, getProximityPosition, initPredicateInfo, initProximityPosition, isReverseAxes, nodeToString, resetProximityPositions, setLocPathIterator, setPredicateCount
Methods inherited from class org.htmlunit.xpath.patterns.NodeTest
calcScore, execute, execute, getLocalName, getNamespace, getNodeTypeTest, getStaticScore, initNodeTest, initNodeTest, setLocalName, setNamespace, setStaticScore, setWhatToShow
Methods inherited from class org.htmlunit.xpath.Expression
assertion, error, execute, exprGetParent, exprSetParent, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isSameClass, isStableNumber, num
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.htmlunit.xpath.xml.dtm.DTMIterator
clone
-
Constructor Details
-
ChildIterator
ChildIterator(int analysis) throws TransformerException Create a ChildIterator object.- Parameters:
analysis
- Analysis bits of the entire pattern.- Throws:
TransformerException
- if any
-
-
Method Details
-
asNode
Return the first node out of the nodeset, if this expression is a nodeset expression.- Overrides:
asNode
in classLocPathIterator
- Parameters:
xctxt
- The XPath runtime context.- Returns:
- the first node out of the nodeset, or DTM.NULL.
-
nextNode
public int nextNode()Returns the next node in the set and advances the position of the iterator in the set. After aDTMIterator
has setRoot called, the first call tonextNode()
returns that root or (if it is rejected by the filters) the first node within its subtree which is not filtered out.- Specified by:
nextNode
in interfaceDTMIterator
- Specified by:
nextNode
in classLocPathIterator
- Returns:
- The next node handle in the set being iterated over, or
DTM.NULL
if there are no more members in that set.
-
getAxis
public int getAxis()Returns the axis being iterated, if it is known.- Specified by:
getAxis
in interfaceDTMIterator
- Overrides:
getAxis
in classLocPathIterator
- Returns:
- Axis.CHILD, etc., or -1 if the axis is not known or is of multiple types.
-