## net.sf.saxon.om
Class PrependIterator

    java.lang.Object
      net.sf.saxon.om.PrependIterator

All Implemented Interfaces:
  AxisIterator, SequenceIterator

public class PrependIterator
extends java.lang.Object
implements AxisIterator

An iterator over nodes, that prepends a given node to the nodes returned by another iterator. Used to modify an iterator over axis A to one that iterates over A-OR-SELF.

Constructor Summary
`PrependIterator(NodeInfo start, AxisIterator base)`

Method Summary
`Item` `current()` Get the current item in the sequence.
`SequenceIterator` `getAnother()` Get another iterator over the same sequence of items, positioned at the start of the sequence
`Item` `next()` Get the next item in the sequence.
`int` `position()` Get the current position

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PrependIterator

    public PrependIterator(NodeInfo start,
                           AxisIterator base)

Method Detail

### next

    public Item next()

  Get the next item in the sequence.

  Specified by:
    `next` in interface `AxisIterator`
  Returns:
    the next Item. If there are no more nodes, return null.

### current

    public Item current()

  Get the current item in the sequence.

  Specified by:
    `current` in interface `AxisIterator`
  Returns:
    the current item, that is, the item most recently returned by next()

### position

    public int position()

  Get the current position

  Specified by:
    `position` in interface `AxisIterator`
  Returns:
    the position of the current item (the item most recently returned by next()), starting at 1 for the first node

### getAnother

    public SequenceIterator getAnother()

  Get another iterator over the same sequence of items, positioned at the start of the sequence

  Specified by:
    `getAnother` in interface `AxisIterator`
  Returns:
    a new iterator over the same sequence