package basics.utl;

import java.util.Iterator;
import basics.testing.Units;

/**
 * A valid iterator with no elements. Used as return value in case of errors.
 * @author kst
 * @param <T>
 */
public class EmptyIterator<T> implements Iterator<T>
{
public boolean hasNext()
{
   return false;
}

public T next()
{
   return (T)null;
}

public void remove()
{
}

public static void unittest()
{
   Units
      .assertFalse(new EmptyIterator<String>().hasNext(), "empty iterator: hasNext must be false");
   Units.assertNull(new EmptyIterator<String>().next(), "empty iterator: next must be Null");
}
}
