## org.eclipse.emf.common.util
Class BasicEMap.BasicEMapIterator<U>

    java.lang.Object
      org.eclipse.emf.common.util.BasicEMap.BasicEMapIterator<U>

All Implemented Interfaces:
  java.util.Iterator<U>

Direct Known Subclasses:
  BasicEMap.BasicEMapKeyIterator, BasicEMap.BasicEMapValueIterator

Enclosing class:
  BasicEMap<K,V>

    protected class BasicEMap.BasicEMapIterator<U>

extends java.lang.Object
implements java.util.Iterator<U>

An iterator over the map entry data.

Field Summary
`protected int` `cursor` The cursor in the entry data.
`protected int` `entryCursor` The cursor in the list of entries.
`protected int` `expectedModCount` The modification count expected of the map.
`protected int` `lastCursor` The last cursor in the entry data.
`protected int` `lastEntryCursor` The cursor in the list of entries.

Method Summary
`boolean` `hasNext()` Returns whether there are more objects.
`U` `next()` Returns the next object and advances the iterator.
`void` `remove()` Removes the entry of the last object returned by `next()` from the map, it's an optional operation.
`protected void` `scan()` Scans to the new entry.
`protected U` `yield(BasicEMap.Entry<K,V> entry)` Called to yield the iterator result for the entry.

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

Field Detail

### cursor

    protected int cursor

  The cursor in the entry data.

### entryCursor

    protected int entryCursor

  The cursor in the list of entries.

### lastCursor

    protected int lastCursor

  The last cursor in the entry data.

### lastEntryCursor

    protected int lastEntryCursor

  The cursor in the list of entries.

### expectedModCount

    protected int expectedModCount

  The modification count expected of the map.

Method Detail

### yield

    protected U yield(BasicEMap.Entry<K,V> entry)

  Called to yield the iterator result for the entry. This implementation returns the entry itself.

  Parameters:
    `entry` - the entry.
  Returns:
    the iterator result for the entry.

### scan

    protected void scan()

  Scans to the new entry.

### hasNext

    public boolean hasNext()

  Returns whether there are more objects.

  Specified by:
    `hasNext` in interface `java.util.Iterator<U>`
  Returns:
    whether there are more objects.

### next

    public U next()

  Returns the next object and advances the iterator.

  Specified by:
    `next` in interface `java.util.Iterator<U>`
  Returns:
    the next object.
  Throws:
    `java.util.NoSuchElementException` - if the iterator is done.

### remove

    public void remove()

  Removes the entry of the last object returned by `next()` from the map, it's an optional operation.

  Specified by:
    `remove` in interface `java.util.Iterator<U>`
  Throws:
    `java.lang.IllegalStateException` - if `next` has not yet been called, or `remove` has already been called after the last call to `next`.

Copyright 2001-2006 IBM Corporation and others. All Rights Reserved.