PCJ API
Version 1.2

bak.pcj.adapter
Class IteratorToByteIteratorAdapter

java.lang.Object
  extended bybak.pcj.adapter.IteratorToByteIteratorAdapter
All Implemented Interfaces:
ByteIterator

public class IteratorToByteIteratorAdapter
extends Object
implements ByteIterator

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

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

Since:
1.0

Constructor Summary
IteratorToByteIteratorAdapter(Iterator iterator)
          Creates a new adaption to an iterator over byte values.
 
Method Summary
 boolean hasNext()
          Indicates whether more byte values can be returned by this iterator.
 byte next()
          Returns the next byte value of this iterator.
 void remove()
          Removes the last byte value returned from the underlying collection.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IteratorToByteIteratorAdapter

public IteratorToByteIteratorAdapter(Iterator iterator)
Creates a new adaption to an iterator over byte values.

Parameters:
iterator - the underlying iterator. This iterator must return values of class Byte. Otherwise a ClassCastException will be thrown by next().
Throws:
NullPointerException - if iterator is null.
Method Detail

hasNext

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

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

next

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

Specified by:
next in interface ByteIterator
Returns:
the next byte value of this iterator.
Throws:
ClassCastException - if the underlying iterator returns an object that is not of class Byte.
See Also:
ByteIterator.hasNext()

remove

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

Specified by:
remove in interface ByteIterator

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