PCJ API
Version 1.2

bak.pcj.adapter
Class ListIteratorToBooleanListIteratorAdapter

java.lang.Object
  extended bybak.pcj.adapter.ListIteratorToBooleanListIteratorAdapter
All Implemented Interfaces:
BooleanIterator, BooleanListIterator

public class ListIteratorToBooleanListIteratorAdapter
extends Object
implements BooleanListIterator

This class represents adaptions of Java Collections Framework list iterators to primitive list iterators over boolean 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:

      CollectionToBooleanCollectionAdapter s;
      ...
      assert s.validate();
  
or by letting the adapter throw an exception on illegal values:
      CollectionToBooleanCollectionAdapter 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
ListIteratorToBooleanListIteratorAdapter(ListIterator iterator)
          Creates a new adaption of a list iterator to a primitive list iterator over boolean values.
 
Method Summary
 void add(boolean v)
          Adds a specified element to the list at this iterator's current position.
 boolean hasNext()
          Indicates whether more boolean values can be returned by this iterator.
 boolean hasPrevious()
          Indicates whether more boolean values can be returned by this iterator by calling previous().
 boolean next()
          Returns the next boolean value of this iterator.
 int nextIndex()
          Returns the index of the element that would be returned by a call to next().
 boolean previous()
          Returns the previous boolean 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 boolean value returned from the underlying collection.
 void set(boolean 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

ListIteratorToBooleanListIteratorAdapter

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

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

add

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

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

hasNext

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

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

hasPrevious

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

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

next

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

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

nextIndex

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

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

previous

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

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

previousIndex

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

Specified by:
previousIndex in interface BooleanListIterator
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:
BooleanListIterator.previous()

remove

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

Specified by:
remove in interface BooleanIterator

set

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

Specified by:
set in interface BooleanListIterator
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