/**
  * Constructs a new cursor.
  *
  * @param index  the index to start from
  */
 protected internal SubCursor(LinkedSubList sub, int index)
     : base((CursorableLinkedList)sub.parent, index + sub.offset)
 {
     this.sub = sub;
 }
 //-----------------------------------------------------------------------
 /**
  * Creates a list iterator for the sublist.
  *
  * @param subList  the sublist to get an iterator for
  * @param fromIndex  the index to start from, relative to the sublist
  */
 protected internal override java.util.ListIterator<Object> createSubListListIterator(LinkedSubList subList, int fromIndex)
 {
     SubCursor cursor = new SubCursor(subList, fromIndex);
     registerCursor(cursor);
     return cursor;
 }