Package net.sf.saxon.expr.sort
Class GroupStartingIterator
- java.lang.Object
-
- net.sf.saxon.expr.sort.GroupMatchingIterator
-
- net.sf.saxon.expr.sort.GroupStartingIterator
-
- All Implemented Interfaces:
GroupIterator
,SequenceIterator
,LookaheadIterator
public class GroupStartingIterator extends GroupMatchingIterator implements LookaheadIterator, GroupIterator
A GroupStartingIterator iterates over a sequence of groups defined by xsl:for-each-group group-starting-with="x". The groups are returned in order of first appearance.
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.expr.sort.GroupMatchingIterator
baseContext, current, currentMembers, next, pattern, population, position, runningContext
-
Fields inherited from interface net.sf.saxon.om.SequenceIterator
GROUNDED, LAST_POSITION_FINDER, LOOKAHEAD
-
-
Constructor Summary
Constructors Constructor Description GroupStartingIterator(SequenceIterator population, Pattern startPattern, XPathContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
advance()
SequenceIterator
getAnother()
Get another SequenceIterator that iterates over the same items as the original, but which is repositioned at the start of the sequence.-
Methods inherited from class net.sf.saxon.expr.sort.GroupMatchingIterator
close, current, getCurrentGroupingKey, getProperties, hasNext, iterateCurrentGroup, next, position
-
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.expr.sort.GroupIterator
getCurrentGroupingKey, iterateCurrentGroup
-
Methods inherited from interface net.sf.saxon.tree.iter.LookaheadIterator
hasNext
-
Methods inherited from interface net.sf.saxon.om.SequenceIterator
close, current, getProperties, next, position
-
-
-
-
Constructor Detail
-
GroupStartingIterator
public GroupStartingIterator(SequenceIterator population, Pattern startPattern, XPathContext context) throws XPathException
- Throws:
XPathException
-
-
Method Detail
-
advance
protected void advance() throws XPathException
- Specified by:
advance
in classGroupMatchingIterator
- Throws:
XPathException
-
getAnother
public SequenceIterator getAnother() throws XPathException
Description copied from interface:SequenceIterator
Get another SequenceIterator that iterates over the same items as the original, but which is repositioned at the start of the sequence.This method allows access to all the items in the sequence without disturbing the current position of the iterator. Internally, its main use is in evaluating the last() function.
This method does not change the state of the iterator.
- Specified by:
getAnother
in interfaceSequenceIterator
- Returns:
- a SequenceIterator that iterates over the same items, positioned before the first item
- Throws:
XPathException
- if any error occurs
-
-