Class UnaryTupleList
- All Implemented Interfaces:
Iterable<List<Member>>
,Collection<List<Member>>
,List<List<Member>>
,TupleIterable
,TupleList
TupleList
where the tuples are unary (each tuple
consists of just one Member
).
It is implemented as a straightforward wrapper on a backing list. You
can provide the backing list explicitly using the
UnaryTupleList(java.util.List)
constructor, and you can access the
backing list by calling slice(int)
(0).
- Author:
- jhyde
-
Nested Class Summary
Nested classes/interfaces inherited from interface mondrian.calc.TupleList
TupleList.PositionCallback
-
Field Summary
Fields inherited from class java.util.AbstractList
modCount
-
Constructor Summary
ConstructorDescriptionCreates an empty UnaryTupleList.UnaryTupleList
(List<Member> list) Creates a UnaryTupleList with a given backing list. -
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
void
addCurrent
(TupleCursor tupleIter) void
void
clear()
cloneList
(int capacity) Creates a copy of this list that has the same type and has a given capacity.fix()
Fixes the tuples of this list, so that their contents will not change even if elements of the list are reordered or removed.get
(int index) get
(int slice, int index) Returns a particular column of a particular row.int
getArity()
Returns the number of members in each tuple.iterator()
project
(int[] destIndices) remove
(int index) int
size()
slice
(int column) Returns a list of the members at a given column.subList
(int fromIndex, int toIndex) Creates a cursor over the contents of this iterable.Creates an iterator over the contents of this iterable.withPositionCallback
(TupleList.PositionCallback positionCallback) Methods inherited from class java.util.AbstractList
addAll, equals, hashCode, indexOf, lastIndexOf, listIterator, listIterator, removeRange
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
Methods inherited from interface java.util.List
addAll, addAll, contains, containsAll, equals, hashCode, indexOf, isEmpty, lastIndexOf, listIterator, listIterator, remove, removeAll, replaceAll, retainAll, sort, spliterator, toArray, toArray
-
Constructor Details
-
UnaryTupleList
public UnaryTupleList()Creates an empty UnaryTupleList. -
UnaryTupleList
Creates a UnaryTupleList with a given backing list.- Parameters:
list
- Backing list
-
-
Method Details
-
get
Description copied from interface:TupleList
Returns a particular column of a particular row.Note that
list.get(row, column)
is equivalent tolist.slice(column).get(row)
andlist.get(row).get(column)
but is more efficient for most implementations of TupleList. -
get
-
add
-
add
-
fix
Description copied from interface:TupleList
Fixes the tuples of this list, so that their contents will not change even if elements of the list are reordered or removed. Returns this list if possible. -
set
-
remove
-
clear
public void clear() -
size
public int size() -
getArity
public int getArity()Description copied from interface:TupleIterable
Returns the number of members in each tuple.- Specified by:
getArity
in interfaceTupleIterable
- Returns:
- The number of members in each tuple
-
slice
Description copied from interface:TupleList
Returns a list of the members at a given column.The list is modifiable if and only if this TupleList is modifiable. Adding an element to a slice will create a tuple whose members in other columns are null. Removing an element from a slicer will remove a tuple.
- Specified by:
slice
in interfaceTupleIterable
- Specified by:
slice
in interfaceTupleList
- Parameters:
column
- Ordinal of the member in each tuple to project- Returns:
- List of members
-
cloneList
Description copied from interface:TupleList
Creates a copy of this list that has the same type and has a given capacity.If capacity is negative, populates the list. A deep copy is made, so that it the contents of the list are not affected to changes to any backing collections.
-
tupleCursor
Description copied from interface:TupleIterable
Creates a cursor over the contents of this iterable.The contents of the cursor will always be the same as those returned by
TupleIterable.tupleIterator()
. BecauseTupleCursor
is a simpler API to implement thanTupleIterator
, in some cases the implementation may be more efficient.- Specified by:
tupleCursor
in interfaceTupleIterable
- Returns:
- cursor over the tuples returned by this iterable
-
tupleIterator
Description copied from interface:TupleIterable
Creates an iterator over the contents of this iterable.Always has the same effect as calling
Iterable.iterator()
.- Specified by:
tupleIterator
in interfaceTupleIterable
- Returns:
- cursor over the tuples returned by this iterable
- See Also:
-
iterator
-
project
-
addTuple
-
addCurrent
- Specified by:
addCurrent
in interfaceTupleList
-
subList
-
withPositionCallback
- Specified by:
withPositionCallback
in interfaceTupleList
-