SequenceIterator
public static class DistinctValues.DistinctIterator extends java.lang.Object implements SequenceIterator
ATOMIZABLE, GROUNDED, LAST_POSITION_FINDER, LOOKAHEAD
Constructor | Description |
---|---|
DistinctIterator(SequenceIterator base,
AtomicComparer comparer) |
Create an iterator over the distinct values in a sequence
|
Modifier and Type | Method | Description |
---|---|---|
Item |
current() |
Get the current value in the sequence (the one returned by the
most recent call on next()).
|
SequenceIterator |
getAnother() |
Get another SequenceIterator that iterates over the same items as the original,
but which is repositioned at the start of the sequence.
|
int |
getProperties() |
Get properties of this iterator, as a bit-significant integer.
|
Item |
next() |
Get the next item in the sequence.
|
int |
position() |
Get the current position.
|
public DistinctIterator(SequenceIterator base, AtomicComparer comparer)
base
- the input sequence. This must return atomic values only.comparer
- The comparer used to obtain comparison keys from each value;
these comparison keys are themselves compared using equals().public Item next() throws XPathException
next
in interface SequenceIterator
XPathException
- if an error occurs retrieving the next itempublic Item current()
current
in interface SequenceIterator
public int position()
position
in interface SequenceIterator
public SequenceIterator getAnother() throws XPathException
getAnother
in interface SequenceIterator
XPathException
- if any error occurspublic int getProperties()
getProperties
in interface SequenceIterator
SequenceIterator.GROUNDED
, SequenceIterator.LAST_POSITION_FINDER
,
and SequenceIterator.LOOKAHEAD
. It is always
acceptable to return the value zero, indicating that there are no known special properties.
It is acceptable for the properties of the iterator to change depending on its state.