org.apache.xpath.axes

## Class SelfIteratorNoPredicate

- 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.SelfIteratorNoPredicate

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, SourceLocator, DTMIterator, PathComponent, SubContextList, ExpressionNode, XPathVisitable

    public class SelfIteratorNoPredicate
    extends LocPathIterator

This class implements an optimized iterator for "." patterns, that is, the self axes without any predicates.

See Also:
  `LocPathIterator`, Serialized Form
Usage:
  **For advanced use only**

### 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

Constructors
Constructor and Description
`SelfIteratorNoPredicate()` Create a SelfIteratorNoPredicate object.

### Method Summary

Methods
`int` `asNode(XPathContext xctxt)` Return the first node out of the nodeset, if this expression is a nodeset expression.
`int` `getLastPos(XPathContext xctxt)` Get the index of the last node that can be itterated to.
`int` `nextNode()` Returns the next node in the set and advances the position of the iterator in the set.

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

`allowDetachToRelease, asIterator, bool, callVisitors, cloneWithReset, detach, execute, executeCharsToContentHandler, getAnalysisBits, getAxis, getContext, getCurrentContextNode, getCurrentNode, getCurrentPos, getDTM, getDTMManager, getExpandEntityReferences, getFilter, getFoundLast, getIsTopLevel, getLength, getPrefixResolver, getRoot, getWhatToShow, getXPathContext, incrementCurrentPos, isDocOrdered, isFresh, isMutable, isNodesetExpr, item, 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, 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`

### Methods inherited from interface org.apache.xml.dtm.DTMIterator

`clone`

### Constructor Detail

#### SelfIteratorNoPredicate

    public SelfIteratorNoPredicate()
                            throws TransformerException

Create a SelfIteratorNoPredicate object.

Throws:
  `TransformerException`

### Method Detail

#### 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.

Specified by:
  `nextNode` in interface `DTMIterator`
Specified by:
  `nextNode` in class `LocPathIterator`
Returns:
  The next `Node` in the set being iterated over, or `null` if there are no more members in that set.

#### 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. Derived classes should try and override this and return a value without having to do a clone operation.

Overrides:
  `asNode` in class `LocPathIterator`
Parameters:
  `xctxt` - The XPath runtime context.
Returns:
  the first node out of the nodeset, or DTM.NULL.
Throws:
  `TransformerException`

#### getLastPos

    public int getLastPos(XPathContext xctxt)

Get the index of the last node that can be itterated to. This probably will need to be overridded by derived classes.

Specified by:
  `getLastPos` in interface `SubContextList`
Overrides:
  `getLastPos` in class `LocPathIterator`
Parameters:
  `xctxt` - XPath runtime context.
Returns:
  the index of the last node that can be itterated to.
See Also:
  `PredicatedNodeTest.getLastPos(XPathContext)`