|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectrcf.core.util.groups.Singleton.Iterator<A>
A - The type of the content element in each singleton.public static class Singleton.Iterator<A>
TODO: Javadoc Wrap a single iterator, create an iterator over singletons of elements.
| Field Summary | |
|---|---|
protected Singleton<A> |
curr
TODO: Javadoc The current singleton created from the wrapped iterator. |
protected Singleton.Iterable<A> |
iterable
TODO: Javadoc |
protected rcf.core.util.collection.iterator.FixedUniIterator<A> |
x
TODO: Javadoc The iterator which is being wrapped. |
| Constructor Summary | |
|---|---|
Singleton.Iterator(Singleton.Iterable<A> _iterable,
rcf.core.util.collection.iterator.FixedUniIterator<A> _a)
TODO: Javadoc Create an iterator of singletons from an iterable object. |
|
| Method Summary | |
|---|---|
rcf.core.util.collection.position.ImmutableFixedUniPosition<Singleton<A>> |
asAbstract()
|
Singleton.Iterator<A> |
copy()
TODO: Javadoc Return a new iterator which is currently at the same position as this iterator. |
boolean |
equals(Object o)
Determine if the specified object is an instance of ImmutablPposition which represents the same position in the
same abstract data structure, as this object. |
Singleton<A> |
get()
TODO: Javadoc Get the content element of this singleton. |
int |
hashCode()
|
boolean |
isCompatible(ImmutablePosition<Singleton<A>> p)
Determine if this position is compatible to, i.e. |
boolean |
isPost()
|
boolean |
isPre()
|
boolean |
isRemoved()
Determine if this position has been removed from the backing abstract data structure. |
boolean |
isSentinel()
Determine if this position is a sentinel; i.e. |
boolean |
isValid()
Determine if there has been a concurrent modification to the backing abstract data structure. |
Singleton.Iterable<A> |
iterable()
TODO: Javadoc |
Singleton.Iterator<A> |
next(rcf.core.util.filter.Filter<Singleton<A>> filter)
|
Singleton<A> |
remove()
Remove this position, and the element associated with it from the backing abstract data structure, and return the element. |
Singleton<A> |
set(Singleton<A> a)
TODO: Javadoc Set the content element of this singleton. |
String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected Singleton<A> curr
protected final Singleton.Iterable<A> iterable
protected final rcf.core.util.collection.iterator.FixedUniIterator<A> x
| Constructor Detail |
|---|
public Singleton.Iterator(Singleton.Iterable<A> _iterable,
rcf.core.util.collection.iterator.FixedUniIterator<A> _a)
_a - The iterator object which is to be wrapped and iterated.| Method Detail |
|---|
public rcf.core.util.collection.position.ImmutableFixedUniPosition<Singleton<A>> asAbstract()
asAbstract in interface rcf.core.util.collection.position.ImmutableFixedUniPosition<Singleton<A>>public Singleton.Iterator<A> copy()
ImmutableIteratorthis iterator. That is, this method will return an iterator
i such that this.equals(i) && this.isCompatible(i)
(notice that equals is symmetric but isCompatible is not). Note that a call to
e.g. ImmutableFixedUniIterator.next(rcf.core.util.filter.Filter)
on this must not affect i and vice-versa.This method is extremely useful in conjunction with position based collections where iteration is expensive or positions have algorithmic importance or higher level semantics.
copy in interface rcf.core.util.collection.iterator.FixedUniIterator<Singleton<A>>copy in interface rcf.core.util.collection.iterator.ImmutableFixedUniIterator<Singleton<A>>copy in interface rcf.core.util.Copyablecopy in interface ImmutableIterator<Singleton<A>>copy in interface Iterator<Singleton<A>>i such that
this.equals(i).public boolean equals(Object o)
ImmutablePositionImmutablPposition which represents the same position in the
same abstract data structure, as this object. Notice that for positions
p and q, p.equals(q) implies
p.isCompatible(q) && q.isCompatible(p).
equals in interface ImmutablePosition<Singleton<A>>equals in class Objecto - The object to compare this one to, for equality.
true if this position and the one specified
represent the same position, in the same abstract data structure.public Singleton<A> get()
ImmutableSingletonInterface
get in interface ImmutableSingletonInterface<Singleton<A>>public int hashCode()
hashCode in class Objectpublic boolean isCompatible(ImmutablePosition<Singleton<A>> p)
ImmutablePositiontrue even for sentinel positions). This method should never
throw exceptions (especially IncompatiblePositionException) as it
is a test to avoid them.
isCompatible in interface ImmutablePosition<Singleton<A>>p - The position to determine if this one is compatible to.
true indicates that this position and the specified
one belong to the same abstract data structure.public boolean isPost()
isPost in interface rcf.core.util.collection.position.ImmutableFixedUniPosition<Singleton<A>>public boolean isPre()
isPre in interface rcf.core.util.collection.position.ImmutableFixedUniPosition<Singleton<A>>public boolean isRemoved()
Position
isRemoved in interface Position<Singleton<A>>true if this position has been removed from the
backing abstract data structure.public boolean isSentinel()
ImmutablePosition
isSentinel in interface ImmutablePosition<Singleton<A>>true if this is a sentinel position.public boolean isValid()
Positionfalse in
all cases where any method may throw a
ConcurrentModificationException.
isValid in interface Position<Singleton<A>>true indicates that this position is still valid
(though it may have been removed, see Position.isRemoved()) in the
backing abstract data structure. This also indicates that no
method on this object will throw a
ConcurrentModificationException at the time of this call.public Singleton.Iterable<A> iterable()
ImmutableIterator
iterable in interface rcf.core.util.collection.iterator.FixedUniIterator<Singleton<A>>iterable in interface rcf.core.util.collection.iterator.ImmutableFixedUniIterator<Singleton<A>>iterable in interface ImmutableIterator<Singleton<A>>public Singleton.Iterator<A> next(rcf.core.util.filter.Filter<Singleton<A>> filter)
next in interface rcf.core.util.collection.iterator.FixedUniIterator<Singleton<A>>next in interface rcf.core.util.collection.iterator.ImmutableFixedUniIterator<Singleton<A>>public Singleton<A> remove()
Position
remove in interface Position<Singleton<A>>ImmutableSingletonInterface.get()public Singleton<A> set(Singleton<A> a)
SingletonInterface
set in interface SingletonInterface<Singleton<A>>set in interface Position<Singleton<A>>a - The new content element of this singleton.
public String toString()
toString in class Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||