Package com.google.common.collect
Class MinMaxPriorityQueue.QueueIterator
- java.lang.Object
-
- com.google.common.collect.MinMaxPriorityQueue.QueueIterator
-
- All Implemented Interfaces:
java.util.Iterator<E>
- Enclosing class:
- MinMaxPriorityQueue<E>
private class MinMaxPriorityQueue.QueueIterator extends java.lang.Object implements java.util.Iterator<E>
Iterates the elements of the queue in no particular order.If the underlying queue is modified during iteration an exception will be thrown.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
canRemove
private int
cursor
private int
expectedModCount
private java.util.Queue<E>
forgetMeNot
private E
lastFromForgetMeNot
private int
nextCursor
private java.util.List<E>
skipMe
-
Constructor Summary
Constructors Modifier Constructor Description private
QueueIterator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
checkModCount()
private boolean
foundAndRemovedExactReference(java.lang.Iterable<E> elements, E target)
Returns true if an exact reference (==) was found and removed from the supplied iterable.boolean
hasNext()
E
next()
private void
nextNotInSkipMe(int c)
Advances nextCursor to the index of the first element afterc
that is not inskipMe
and returnssize()
if there is no such element.void
remove()
private boolean
removeExact(java.lang.Object target)
Removes only this exact instance, not others that are equals()
-
-
-
Field Detail
-
cursor
private int cursor
-
nextCursor
private int nextCursor
-
expectedModCount
private int expectedModCount
-
forgetMeNot
@CheckForNull private java.util.Queue<E> forgetMeNot
-
skipMe
@CheckForNull private java.util.List<E> skipMe
-
lastFromForgetMeNot
@CheckForNull private E lastFromForgetMeNot
-
canRemove
private boolean canRemove
-
-
Method Detail
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfacejava.util.Iterator<E>
-
remove
public void remove()
- Specified by:
remove
in interfacejava.util.Iterator<E>
-
foundAndRemovedExactReference
private boolean foundAndRemovedExactReference(java.lang.Iterable<E> elements, E target)
Returns true if an exact reference (==) was found and removed from the supplied iterable.
-
removeExact
private boolean removeExact(java.lang.Object target)
Removes only this exact instance, not others that are equals()
-
checkModCount
private void checkModCount()
-
nextNotInSkipMe
private void nextNotInSkipMe(int c)
Advances nextCursor to the index of the first element afterc
that is not inskipMe
and returnssize()
if there is no such element.
-
-