Class AbstractTupleList.AbstractTupleListIterator
- java.lang.Object
-
- mondrian.calc.impl.AbstractTupleList.AbstractTupleListIterator
-
- All Implemented Interfaces:
Iterator<List<Member>>
,TupleCursor
,TupleIterator
- Enclosing class:
- AbstractTupleList
protected class AbstractTupleList.AbstractTupleListIterator extends Object implements TupleIterator
Implementation ofTupleIterator
forArrayTupleList
. Based upon AbstractList.Itr, but with concurrent modification checking removed.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractTupleListIterator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<Member>
current()
Returns the tuple that this cursor is positioned on.void
currentToArray(Member[] members, int offset)
Writes the member(s) of the next tuple to a given offset in an array.boolean
forward()
Moves the iterator forward one position.int
getArity()
Returns the number of members in each tuple.boolean
hasNext()
Member
member(int column)
List<Member>
next()
void
remove()
void
setContext(Evaluator evaluator)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.util.Iterator
forEachRemaining
-
-
-
-
Method Detail
-
forward
public boolean forward()
Description copied from interface:TupleCursor
Moves the iterator forward one position.Returns false only when end of data has been reached.
Similar to calling the
Iterator
methodsIterator.hasNext()
followed byIterator.next()
but does not construct an object, and is therefore cheaper.If you want to use an Iterator, see
TupleIterator
.- Specified by:
forward
in interfaceTupleCursor
- Returns:
- Whether was able to move forward a position
-
current
public List<Member> current()
Description copied from interface:TupleCursor
Returns the tuple that this cursor is positioned on.This method never returns null, and may safely be called multiple times (or not all) for each position in the iteration.
Invalid to call this method when the cursor is has not been positioned, for example, if
TupleCursor.forward()
has not been called or if the most recent call toforward
returnedfalse
.- Specified by:
current
in interfaceTupleCursor
- Returns:
- Current tuple
-
currentToArray
public void currentToArray(Member[] members, int offset)
Description copied from interface:TupleCursor
Writes the member(s) of the next tuple to a given offset in an array.This method saves the overhead of a memory allocation when the resulting tuple will be written immediately to an array. The effect of
currentToArray(members, 0)
is the same as callingcurrent().toArray(members)
.Before calling this method, you must position the iterator at a valid position. Typically you would call hasNext followed by next; or forward.
- Specified by:
currentToArray
in interfaceTupleCursor
- Parameters:
members
- Membersoffset
- Offset in the array to write to
-
getArity
public int getArity()
Description copied from interface:TupleCursor
Returns the number of members in each tuple.- Specified by:
getArity
in interfaceTupleCursor
- Returns:
- The number of members in each tuple
-
setContext
public void setContext(Evaluator evaluator)
- Specified by:
setContext
in interfaceTupleCursor
-
member
public Member member(int column)
- Specified by:
member
in interfaceTupleCursor
-
-