net.sf.saxon.expr
Class MultiIterator

java.lang.Object
  extended by net.sf.saxon.expr.MultiIterator
All Implemented Interfaces:
Iterator

public class MultiIterator
extends Object
implements Iterator

An iterator that combines the results of a sequence of iterators


Constructor Summary
MultiIterator(Iterator[] array)
          Create an iterator that concatenates a number of supplied iterators
 
Method Summary
 boolean hasNext()
          Returns true if the iteration has more elements.
 Object next()
          Returns the next element in the iteration.
 void remove()
          Removes from the underlying collection the last element returned by the iterator (optional operation).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiIterator

public MultiIterator(Iterator[] array)
Create an iterator that concatenates a number of supplied iterators

Parameters:
array - the iterators to be concatenated
Method Detail

hasNext

public boolean hasNext()
Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)

Specified by:
hasNext in interface Iterator
Returns:
true if the iterator has more elements.

next

public Object next()
Returns the next element in the iteration.

Specified by:
next in interface Iterator
Returns:
the next element in the iteration.
Throws:
NoSuchElementException - iteration has no more elements.

remove

public void remove()
Removes from the underlying collection the last element returned by the iterator (optional operation). This method can be called only once per call to next. The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method.

Specified by:
remove in interface Iterator
Throws:
UnsupportedOperationException - if the remove operation is not supported by this Iterator.
IllegalStateException - if the next method has not yet been called, or the remove method has already been called after the last call to the next method.


Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.