org.apache.xpath.axes

Class ChildTestIterator

Implemented Interfaces:
Cloneable, DTMIterator, java.io.Serializable, ExpressionNode, PathComponent, java.io.Serializable, SourceLocator, SubContextList, XPathVisitable
Known Direct Subclasses:
AttributeIterator, KeyRefIterator, OneStepIterator, OneStepIteratorForward, UnionChildIterator

public class ChildTestIterator
extends BasicTestIterator

This class implements an optimized iterator for children patterns that have a node test, and possibly a predicate.
See Also:
BasicTestIterator, Serialized Form

Field Summary

Fields inherited from class org.apache.xpath.axes.LocPathIterator

m_lastFetched

Fields inherited from class org.apache.xpath.patterns.NodeTest

SCORE_NODETEST, SCORE_NONE, SCORE_NSWILD, SCORE_OTHER, SCORE_QNAME, SHOW_BYFUNCTION, SUPPORTS_PRE_STRIPPING, WILD

Fields inherited from interface org.apache.xml.dtm.DTMIterator

FILTER_ACCEPT, FILTER_REJECT, FILTER_SKIP

Constructor Summary

ChildTestIterator(DTMAxisTraverser traverser)
Create a ChildTestIterator object.

Method Summary

DTMIterator
cloneWithReset()
Get a cloned Iterator that is reset to the beginning of the query.
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.
void
setRoot(int context, Object environment)
Initialize the context values for this expression after it is cloned.

Methods inherited from class org.apache.xpath.axes.BasicTestIterator

cloneWithReset, nextNode

Methods inherited from class org.apache.xpath.axes.LocPathIterator

allowDetachToRelease, asIterator, asNode, bool, callVisitors, cloneWithReset, detach, execute, executeCharsToContentHandler, getAnalysisBits, getAxis, getContext, getCurrentContextNode, getCurrentNode, getCurrentPos, getDTM, getDTMManager, getExpandEntityReferences, getFilter, getFoundLast, getIsTopLevel, getLastPos, getLength, getPrefixResolver, getRoot, getWhatToShow, getXPathContext, incrementCurrentPos, isDocOrdered, isFresh, isMutable, isNodesetExpr, item, nextNode, previousNode, reset, runTo, setCurrentContextNode, setCurrentPos, setEnvironment, setIsTopLevel, setItem, setRoot, setShouldCacheNodes, size

Methods inherited from class org.apache.xpath.axes.PredicatedNodeTest

acceptNode, callPredicateVisitors, canTraverseOutsideSubtree, clone, deepEquals, fixupVariables, getLastPos, getLocPathIterator, getPredicate, getPredicateCount, getPredicateIndex, getProximityPosition, getProximityPosition, initProximityPosition, isReverseAxes, resetProximityPositions, setLocPathIterator, setPredicateCount

Methods inherited from class org.apache.xpath.patterns.NodeTest

callVisitors, debugWhatToShow, deepEquals, execute, execute, execute, fixupVariables, getDefaultScore, getLocalName, getNamespace, getNodeTypeTest, getStaticScore, getWhatToShow, initNodeTest, initNodeTest, setLocalName, setNamespace, setStaticScore, setWhatToShow

Methods inherited from class org.apache.xpath.Expression

asIterator, asIteratorRaw, asNode, assertion, bool, canTraverseOutsideSubtree, deepEquals, error, execute, execute, execute, execute, executeCharsToContentHandler, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, fixupVariables, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isNodesetExpr, isStableNumber, num, warn, xstr

Constructor Details

ChildTestIterator

public ChildTestIterator(DTMAxisTraverser traverser)
Create a ChildTestIterator object.
Parameters:
traverser - Traverser that tells how the KeyIterator is to be handled.

Method Details

cloneWithReset

public DTMIterator cloneWithReset()
            throws CloneNotSupportedException
Get a cloned Iterator that is reset to the beginning of the query.
Specified by:
cloneWithReset in interface DTMIterator
Overrides:
cloneWithReset in interface BasicTestIterator
Returns:
A cloned NodeIterator set of the start of the query.

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. Afterdetach has been invoked, calls to nextNode orpreviousNode will raise the exception INVALID_STATE_ERR.
Specified by:
detach in interface DTMIterator
Overrides:
detach in interface LocPathIterator

getAxis

public int getAxis()
Returns the axis being iterated, if it is known.
Specified by:
getAxis in interface DTMIterator
Overrides:
getAxis in interface LocPathIterator
Returns:
Axis.CHILD, etc., or -1 if the axis is not known or is of multiple types.

setRoot

public void setRoot(int context,
                    Object environment)
Initialize the context values for this expression after it is cloned.
Specified by:
setRoot in interface DTMIterator
Overrides:
setRoot in interface LocPathIterator
Parameters:

Copyright B) 2004 Apache XML Project. All Rights Reserved.