code: public void runTo(int index)
    {
  
      if (m_foundLast || ((index >= 0) && (index <= getCurrentPos())))
        return;
  
      int n;
  
      if (-1 == index)
      {
        while (DTM.NULL != (n = nextNode()));
      }
      else
      {
        while (DTM.NULL != (n = nextNode()))
        {
          if (getCurrentPos() >= index)
            break;
        }
      }
    }
docs: If an index is requested, NodeSetDTM will call this method
  to run the iterator to the index.  By default this sets
  m_next to the index.  If the index argument is -1, this
  signals that the iterator should be run to the end.
  
  @param index The index to run to, or -1 if the iterator
  should run to the end.