sandmark.util
Class MultiIter
java.lang.Object
|
+--sandmark.util.MultiIter
- All Implemented Interfaces:
- java.util.Iterator
- Direct Known Subclasses:
- AllPathsIterator
- public abstract class MultiIter
- extends java.lang.Object
- implements java.util.Iterator
Field Summary |
(package private) java.lang.Object[] |
elmts
|
(package private) java.util.Iterator[] |
enums
|
(package private) boolean |
firstTime
|
(package private) java.lang.Object |
result
|
Constructor Summary |
MultiIter()
Compose several iterators into a new iterator.
|
Method Summary |
abstract int |
count()
|
abstract java.lang.Object |
create(java.lang.Object[] elmts)
|
void |
genNext()
|
boolean |
hasNext()
|
(package private) void |
init()
|
java.lang.Object |
next()
|
void |
remove()
|
abstract java.util.Iterator |
start(int k,
java.lang.Object[] elmts)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
enums
java.util.Iterator[] enums
result
java.lang.Object result
elmts
java.lang.Object[] elmts
firstTime
boolean firstTime
MultiIter
public MultiIter()
- Compose several iterators into a new iterator.
Extend this class and override
start
with a method which starts the k:th enumerator
and create
which creates the
new element to yield out of the elements
yielded by the individual enumerators.
init
void init()
genNext
public void genNext()
start
public abstract java.util.Iterator start(int k,
java.lang.Object[] elmts)
create
public abstract java.lang.Object create(java.lang.Object[] elmts)
throws java.lang.Exception
java.lang.Exception
count
public abstract int count()
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interface java.util.Iterator
next
public java.lang.Object next()
- Specified by:
next
in interface java.util.Iterator
remove
public void remove()
- Specified by:
remove
in interface java.util.Iterator