Package org.apache.commons.jxpath.ri.axes

# Class SelfContext

java.lang.Object
org.apache.commons.jxpath.ri.EvalContext
org.apache.commons.jxpath.ri.axes.SelfContext

All Implemented Interfaces:
  `Iterator`, `ExpressionContext`

public class SelfContext extends EvalContext
EvalContext that returns the current node from the parent context if the test succeeds.

- ## Field Summary

  ### Fields inherited from class org.apache.commons.jxpath.ri.EvalContext

  `parentContext, position, rootContext`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SelfContext(EvalContext parentContext, NodeTest nodeTest)`
  Constructs a new SelfContext.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `NodePointer`
  `getCurrentNodePointer()`
  Returns the current context node.
  `Pointer`
  `getSingleNodePointer()`
  Returns the first encountered Pointer that matches the current context's criteria.
  `boolean`
  `nextNode()`
  Returns true if there is another object in the current set.
  `void`
  `reset()`
  Sets current position = 0, which is the pre-iteration state.
  `boolean`
  `setPosition(int position)`
  Moves the current position to the specified index.

  ### Methods inherited from class org.apache.commons.jxpath.ri.EvalContext

  `getContextNodeList, getContextNodePointer, getCurrentPosition, getDocumentOrder, getJXPathContext, getNodeSet, getPosition, getRootContext, getValue, hasNext, isChildOrderingRequired, next, nextSet, remove, sortPointers, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface java.util.Iterator

  `forEachRemaining`

- ## Constructor Details

  - ### SelfContext

    public SelfContext(EvalContext parentContext, NodeTest nodeTest)
    Constructs a new SelfContext.
    Parameters:
      `parentContext` - EvalContext
      `nodeTest` - guard

- ## Method Details

  - ### getCurrentNodePointer

    public NodePointer getCurrentNodePointer()
    Description copied from class: `EvalContext`
    Returns the current context node. Undefined before the beginning of the iteration.
    Specified by:
      `getCurrentNodePointer` in class `EvalContext`
    Returns:
      NodePoiner

  - ### getSingleNodePointer

    public Pointer getSingleNodePointer()
    Description copied from class: `EvalContext`
    Returns the first encountered Pointer that matches the current context's criteria.
    Overrides:
      `getSingleNodePointer` in class `EvalContext`
    Returns:
      Pointer

  - ### nextNode

    public boolean nextNode()
    Description copied from class: `EvalContext`
    Returns true if there is another object in the current set. Switches the current position and node to the next object.
    Specified by:
      `nextNode` in class `EvalContext`
    Returns:
      boolean

  - ### reset

    public void reset()
    Description copied from class: `EvalContext`
    Sets current position = 0, which is the pre-iteration state.
    Overrides:
      `reset` in class `EvalContext`

  - ### setPosition

    public boolean setPosition(int position)
    Description copied from class: `EvalContext`
    Moves the current position to the specified index. Used with integer predicates to quickly get to the n'th element of the node set. Returns false if the position is out of the node set range. You can call it with 0 as the position argument to restart the iteration.
    Overrides:
      `setPosition` in class `EvalContext`
    Parameters:
      `position` - to set
    Returns:
      boolean