Package net.sf.saxon.om
Class MemoSequence.ProgressiveIterator
- java.lang.Object
- 
- net.sf.saxon.om.MemoSequence.ProgressiveIterator
 
- 
- All Implemented Interfaces:
- java.io.Closeable,- java.lang.AutoCloseable,- LastPositionFinder,- SequenceIterator,- GroundedIterator
 - Enclosing class:
- MemoSequence
 
 public static final class MemoSequence.ProgressiveIterator extends java.lang.Object implements SequenceIterator, LastPositionFinder, GroundedIterator A ProgressiveIterator starts by reading any items already held in the reservoir; when the reservoir is exhausted, it reads further items from the inputIterator, copying them into the reservoir as they are read.
- 
- 
Constructor SummaryConstructors Constructor Description ProgressiveIterator(MemoSequence container)Create a ProgressiveIterator
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetLength()Get the last position (that is, the number of items in the sequence)MemoSequencegetMemoSequence()Get the containing MemoSequenceGroundedValuegetResidue()Return a GroundedValue containing all the remaining items in the sequence returned by this SequenceIterator, starting at the current position.booleanisActuallyGrounded()Ask if the iterator is actually grounded.GroundedValuematerialize()Return a value containing all the items in the sequence returned by this SequenceIteratorItemnext()Get the next item in the sequence.booleansupportsGetLength()Ask whether this iterator supports use of theLastPositionFinder.getLength()method.- 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface net.sf.saxon.om.SequenceIteratorclose, discharge
 
- 
 
- 
- 
- 
Constructor Detail- 
ProgressiveIteratorpublic ProgressiveIterator(MemoSequence container) Create a ProgressiveIterator- Parameters:
- container- the containing MemoSequence
 
 
- 
 - 
Method Detail- 
getMemoSequencepublic MemoSequence getMemoSequence() Get the containing MemoSequence- Returns:
- the containing MemoSequence
 
 - 
nextpublic Item next() Description copied from interface:SequenceIteratorGet the next item in the sequence. This method changes the state of the iterator.- Specified by:
- nextin interface- SequenceIterator
- Returns:
- the next item, or null if there are no more items. Once a call on next() has returned null, no further calls should be made. The preferred action for an iterator if subsequent calls on next() are made is to return null again, and all implementations within Saxon follow this rule.
 
 - 
supportsGetLengthpublic boolean supportsGetLength() Description copied from interface:LastPositionFinderAsk whether this iterator supports use of theLastPositionFinder.getLength()method. This method should always be called before callingLastPositionFinder.getLength(), because an iterator that implements this interface may support use ofLastPositionFinder.getLength()in some situations and not in others- Specified by:
- supportsGetLengthin interface- LastPositionFinder
- Returns:
- true if the LastPositionFinder.getLength()method can be called to determine the length of the underlying sequence.
 
 - 
getLengthpublic int getLength() Get the last position (that is, the number of items in the sequence)- Specified by:
- getLengthin interface- LastPositionFinder
- Returns:
- the number of items in the sequence
 
 - 
isActuallyGroundedpublic boolean isActuallyGrounded() Description copied from interface:GroundedIteratorAsk if the iterator is actually grounded. This method must be called before callingGroundedIterator.materialize()orGroundedIterator.getResidue(), because the iterator might be grounded under some conditions and not others (usually when it delegates to another iterator)- Specified by:
- isActuallyGroundedin interface- GroundedIterator
- Returns:
- true if this iterator is grounded
 
 - 
materializepublic GroundedValue materialize() Return a value containing all the items in the sequence returned by this SequenceIterator- Specified by:
- materializein interface- GroundedIterator
- Returns:
- the corresponding value
 
 - 
getResiduepublic GroundedValue getResidue() Description copied from interface:GroundedIteratorReturn a GroundedValue containing all the remaining items in the sequence returned by this SequenceIterator, starting at the current position. This should be an "in-memory" value, not a Closure. This method does not change the state of the iterator (in particular, it does not consume the iterator).- Specified by:
- getResiduein interface- GroundedIterator
- Returns:
- the corresponding Value
 
 
- 
 
-