org.apache.xpath.axes
Class DescendantIterator
java.lang.Object
|
+--org.apache.xpath.Expression
|
+--org.apache.xpath.patterns.NodeTest
|
+--org.apache.xpath.axes.PredicatedNodeTest
|
+--org.apache.xpath.axes.LocPathIterator
|
+--org.apache.xpath.axes.DescendantIterator
- public class DescendantIterator
- extends LocPathIterator
**For advanced use only**
This class implements an optimized iterator for
descendant, descendant-or-self, or "//foo" patterns.
- See Also:
org.apache.xpath.axes.WalkerFactory#newLocPathIterator
, Serialized Form
Method Summary |
int |
asNode(XPathContext xctxt)
Return the first node out of the nodeset, if this expression is
a nodeset expression. |
DTMIterator |
cloneWithReset()
Get a cloned Iterator that is reset to the beginning
of the query. |
boolean |
deepEquals(Expression expr)
|
void |
detach()
Detaches the iterator from the set which it iterated over, releasing
any computational resources and placing the iterator in the INVALID
state. |
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. |
void |
setRoot(int context,
java.lang.Object environment)
Initialize the context values for this expression
after it is cloned. |
Methods inherited from class org.apache.xpath.axes.LocPathIterator |
allowDetachToRelease,
asIterator,
bool,
callVisitors,
execute,
executeCharsToContentHandler,
getAnalysisBits,
getContext,
getCurrentContextNode,
getCurrentNode,
getCurrentPos,
getDTM,
getDTMManager,
getExpandEntityReferences,
getFilter,
getFoundLast,
getIsTopLevel,
getLastPos,
getLength,
getPrefixResolver,
getRoot,
getWhatToShow,
getXPathContext,
incrementCurrentPos,
isDocOrdered,
isFresh,
isMutable,
isNodesetExpr,
item,
previousNode,
reset,
runTo,
setCurrentContextNode,
setCurrentPos,
setEnvironment,
setIsTopLevel,
setItem,
setShouldCacheNodes,
size |
Methods inherited from class org.apache.xpath.axes.PredicatedNodeTest |
acceptNode,
callPredicateVisitors,
canTraverseOutsideSubtree,
clone,
fixupVariables,
getLocPathIterator,
getPredicate,
getPredicateCount,
getPredicateIndex,
getProximityPosition,
getProximityPosition,
initProximityPosition,
isReverseAxes,
resetProximityPositions,
setLocPathIterator,
setPredicateCount |
Methods inherited from class org.apache.xpath.patterns.NodeTest |
debugWhatToShow,
execute,
execute,
getDefaultScore,
getLocalName,
getNamespace,
getNodeTypeTest,
getStaticScore,
initNodeTest,
initNodeTest,
setLocalName,
setNamespace,
setStaticScore,
setWhatToShow |
Methods inherited from class org.apache.xpath.Expression |
asIteratorRaw,
assertion,
error,
execute,
exprAddChild,
exprGetChild,
exprGetNumChildren,
exprGetParent,
exprSetParent,
getColumnNumber,
getExpressionOwner,
getLineNumber,
getPublicId,
getSystemId,
isStableNumber,
num,
warn,
xstr |
Methods inherited from class java.lang.Object |
equals,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
DescendantIterator
public DescendantIterator()
- Create a DescendantIterator object.
- Parameters:
compiler
- A reference to the Compiler that contains the op map.opPos
- The position within the op map, which contains the
location path expression for this itterator.- Throws:
- TransformerException -
cloneWithReset
public DTMIterator cloneWithReset()
throws java.lang.CloneNotSupportedException
- Get a cloned Iterator that is reset to the beginning
of the query.
- Returns:
- A cloned NodeIterator set of the start of the query.
- Throws:
- java.lang.CloneNotSupportedException -
- Overrides:
- cloneWithReset in class LocPathIterator
nextNode
public int nextNode()
- Returns the next node in the set and advances the position of the
iterator in the set. After a NodeIterator is created, the first call
to nextNode() returns the first node in the set.
- Returns:
- The next
Node
in the set being iterated over, or
null
if there are no more members in that set. - Throws:
- DOMException - INVALID_STATE_ERR: Raised if this method is called after the
detach
method was invoked. - Overrides:
- nextNode in class LocPathIterator
setRoot
public void setRoot(int context,
java.lang.Object environment)
- Initialize the context values for this expression
after it is cloned.
- Parameters:
execContext
- The XPath runtime context for this
transformation.- Overrides:
- setRoot in class LocPathIterator
asNode
public int asNode(XPathContext xctxt)
throws TransformerException
- Return the first node out of the nodeset, if this expression is
a nodeset expression. This is the default implementation for
nodesets.
WARNING: Do not mutate this class from this function!
- Parameters:
xctxt
- The XPath runtime context.- Returns:
- the first node out of the nodeset, or DTM.NULL.
- Overrides:
- asNode in class LocPathIterator
detach
public void detach()
- Detaches the iterator from the set which it iterated over, releasing
any computational resources and placing the iterator in the INVALID
state. After
detach
has been invoked, calls to
nextNode
orpreviousNode
will raise the
exception INVALID_STATE_ERR.
- Overrides:
- detach in class LocPathIterator
getAxis
public int getAxis()
- Returns the axis being iterated, if it is known.
- Returns:
- Axis.CHILD, etc., or -1 if the axis is not known or is of multiple
types.
- Overrides:
- getAxis in class LocPathIterator
deepEquals
public boolean deepEquals(Expression expr)
- Overrides:
- deepEquals in class PredicatedNodeTest
- See Also:
Expression.deepEquals(Expression)
Copyright © 2003 Apache XML Project. All Rights Reserved.