Package net.sf.saxon.expr.sort
Class MergeGroupingIterator.ManualMergeGroupingIterator
- java.lang.Object
-
- net.sf.saxon.tree.iter.ManualIterator
-
- com.saxonica.ee.stream.ManualGroupIterator
-
- net.sf.saxon.expr.sort.MergeGroupingIterator.ManualMergeGroupingIterator
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,LastPositionFinder
,GroupIterator
,FocusIterator
,SequenceIterator
,GroundedIterator
,LookaheadIterator
,ReversibleIterator
- Enclosing class:
- MergeGroupingIterator
public static class MergeGroupingIterator.ManualMergeGroupingIterator extends ManualGroupIterator
-
-
Constructor Summary
Constructors Constructor Description ManualMergeGroupingIterator(java.util.List<Item> currentGroup, AtomicSequence currentGroupingKey, int position, ObjectValue<ItemWithMergeKeys> currenti)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AtomicSequence
getCurrentGroupingKey()
Get the grouping key of the current groupint
getLength()
Get the position of the last item in the sequenceSequenceIterator
iterateCurrentGroup()
Get an iterator over the members of the current group, in population order.-
Methods inherited from class com.saxonica.ee.stream.ManualGroupIterator
appendToCurrentGroup, currentGroupContains, getSnapShot, setCurrentGroup, setCurrentGroupingKey, startNewCurrentGroup
-
Methods inherited from class net.sf.saxon.tree.iter.ManualIterator
current, getResidue, getReverseIterator, hasNext, incrementPosition, isActuallyGrounded, materialize, next, position, setContextItem, setLengthFinder, setPosition, supportsGetLength, supportsHasNext
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.saxon.om.SequenceIterator
close, discharge, next
-
-
-
-
Constructor Detail
-
ManualMergeGroupingIterator
public ManualMergeGroupingIterator(java.util.List<Item> currentGroup, AtomicSequence currentGroupingKey, int position, ObjectValue<ItemWithMergeKeys> currenti)
-
-
Method Detail
-
iterateCurrentGroup
public SequenceIterator iterateCurrentGroup()
Description copied from interface:GroupIterator
Get an iterator over the members of the current group, in population order. This must always be a clean iterator, that is, an iterator that starts at the first item of the group.- Specified by:
iterateCurrentGroup
in interfaceGroupIterator
- Overrides:
iterateCurrentGroup
in classManualGroupIterator
- Returns:
- an iterator over all the members of the current group, in population order.
-
getCurrentGroupingKey
public AtomicSequence getCurrentGroupingKey()
Description copied from interface:GroupIterator
Get the grouping key of the current group- Specified by:
getCurrentGroupingKey
in interfaceGroupIterator
- Overrides:
getCurrentGroupingKey
in classManualGroupIterator
- Returns:
- the current grouping key in the case of group-by or group-adjacent, or null in the case of group-starting-with and group-ending-with
-
getLength
public int getLength()
Description copied from interface:FocusIterator
Get the position of the last item in the sequence- Specified by:
getLength
in interfaceFocusIterator
- Specified by:
getLength
in interfaceLastPositionFinder
- Overrides:
getLength
in classManualIterator
- Returns:
- the position of the last item
-
-