PCJ API
Version 1.2

bak.pcj.adapter
Class ListIteratorToLongListIteratorAdapter

java.lang.Object
  extended bybak.pcj.adapter.ListIteratorToLongListIteratorAdapter
All Implemented Interfaces:
LongIterator, LongListIterator

public class ListIteratorToLongListIteratorAdapter
extends Object
implements LongListIterator

This class represents adaptions of Java Collections Framework list iterators to primitive list iterators over long values.

Adapters from JCF collections to primitive collections will fail if the JCF collection contains null values or values of the wrong class. However, adapters are not fast failing in the case that the underlying collection should contain illegal values. To implement fast failure would require every operation to check every element of the underlying collection before doing anything. Instead validation methods are provided. They can be called using the assertion facility in the client code:

      CollectionToLongCollectionAdapter s;
      ...
      assert s.validate();
  
or by letting the adapter throw an exception on illegal values:
      CollectionToLongCollectionAdapter s;
      ...
      s.evalidate();  // Throws an exception on illegal values
  
Either way, validation must be invoked directly by the client code.

Since:
1.0

Field Summary
protected  ListIterator iterator
          The underlying iterator.
 
Constructor Summary
ListIteratorToLongListIteratorAdapter(ListIterator iterator)
          Creates a new adaption of a list iterator to a primitive list iterator over long values.
 
Method Summary
 void add(long v)
          Adds a specified element to the list at this iterator's current position.
 boolean hasNext()
          Indicates whether more long values can be returned by this iterator.
 boolean hasPrevious()
          Indicates whether more long values can be returned by this iterator by calling previous().
 long next()
          Returns the next long value of this iterator.
 int nextIndex()
          Returns the index of the element that would be returned by a call to next().
 long previous()
          Returns the previous long value of this iterator.
 int previousIndex()
          Returns the index of the element that would be returned by a call to previous().
 void remove()
          Removes the last long value returned from the underlying collection.
 void set(long v)
          Sets the last element returned to a specified value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

iterator

protected ListIterator iterator
The underlying iterator.

Constructor Detail

ListIteratorToLongListIteratorAdapter

public ListIteratorToLongListIteratorAdapter(ListIterator iterator)
Creates a new adaption of a list iterator to a primitive list iterator over long values.

Parameters:
iterator - the iterator to adapt to a primitive iterator.
Throws:
NullPointerException - if iterator is null.
Method Detail

add

public void add(long v)
Description copied from interface: LongListIterator
Adds a specified element to the list at this iterator's current position.

Specified by:
add in interface LongListIterator
Parameters:
v - the element to add.

hasNext

public boolean hasNext()
Description copied from interface: LongIterator
Indicates whether more long values can be returned by this iterator.

Specified by:
hasNext in interface LongIterator
Returns:
true if more long values can be returned by this iterator; returns false otherwise.
See Also:
LongIterator.next()

hasPrevious

public boolean hasPrevious()
Description copied from interface: LongListIterator
Indicates whether more long values can be returned by this iterator by calling previous().

Specified by:
hasPrevious in interface LongListIterator
Returns:
true if more long values can be returned by this iterator in backwards direction; returns false otherwise.
See Also:
LongListIterator.previous()

next

public long next()
Description copied from interface: LongIterator
Returns the next long value of this iterator.

Specified by:
next in interface LongIterator
Returns:
the next long value of this iterator.
See Also:
LongIterator.hasNext()

nextIndex

public int nextIndex()
Description copied from interface: LongListIterator
Returns the index of the element that would be returned by a call to next().

Specified by:
nextIndex in interface LongListIterator
Returns:
the index of the element that would be returned by a call to next().
See Also:
LongIterator.next()

previous

public long previous()
Description copied from interface: LongListIterator
Returns the previous long value of this iterator.

Specified by:
previous in interface LongListIterator
Returns:
the previous long value of this iterator.
See Also:
LongListIterator.hasPrevious()

previousIndex

public int previousIndex()
Description copied from interface: LongListIterator
Returns the index of the element that would be returned by a call to previous().

Specified by:
previousIndex in interface LongListIterator
Returns:
the index of the element that would be returned by a call to previous(); if no more elements are available in backwards direction, -1 is returned.
See Also:
LongListIterator.previous()

remove

public void remove()
Description copied from interface: LongIterator
Removes the last long value returned from the underlying collection.

Specified by:
remove in interface LongIterator

set

public void set(long v)
Description copied from interface: LongListIterator
Sets the last element returned to a specified value.

Specified by:
set in interface LongListIterator
Parameters:
v - the new value of the element.

PCJ API
Version 1.2

Report a bug or request a feature.
Further information on the development and latest release of PCJ can be found at the project homepage.

Primitive Collections for Java is released under the GNU Lesser General Public License.
Copyright © 2002, 2003 Søren Bak. All Rights Reserved.

Hosted by SourceForge.net
SourceForge.net Logo