Package net.sf.saxon.om
Class MemoSequence
- java.lang.Object
- 
- net.sf.saxon.om.MemoSequence
 
- 
- All Implemented Interfaces:
- Sequence
 
 public class MemoSequence extends java.lang.Object implements Sequence A Sequence implementation that represents a lazy evaluation of a supplied iterator. Items are read from the base iterator only when they are first required, and are then remembered within the local storage of the MemoSequence, which eventually (if the sequence is read to the end) contains the entire value.
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description classMemoSequence.ProgressiveIteratorA 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.
 - 
Field SummaryFields Modifier and Type Field Description protected net.sf.saxon.om.MemoSequence.Statestate
 - 
Constructor SummaryConstructors Constructor Description MemoSequence(SequenceIterator iterator)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description Itemhead()Get the first item in the sequence.ItemitemAt(int n)Get the Nth item in the sequence (0-based), reading new items into the internal reservoir if necessarySequenceIteratoriterate()Get aSequenceIteratorover all the items in the sequence- 
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.SequencemakeRepeatable, materialize
 
- 
 
- 
- 
- 
Constructor Detail- 
MemoSequencepublic MemoSequence(SequenceIterator iterator) 
 
- 
 - 
Method Detail- 
headpublic Item head() throws XPathException Description copied from interface:SequenceGet the first item in the sequence.- Specified by:
- headin interface- Sequence
- Returns:
- the first item in the sequence if there is one, or null if the sequence is empty
- Throws:
- XPathException- in the situation where the sequence is evaluated lazily, and evaluation of the first item causes a dynamic error.
 
 - 
iteratepublic SequenceIterator iterate() throws XPathException Description copied from interface:SequenceGet aSequenceIteratorover all the items in the sequence- Specified by:
- iteratein interface- Sequence
- Returns:
- an iterator (specifically, a Saxon SequenceIterator, which is not aIterator) over all the items
- Throws:
- XPathException- in the situation where the sequence is evaluated lazily, and constructing an iterator over the items causes a dynamic error.
 
 - 
itemAtpublic Item itemAt(int n) throws XPathException Get the Nth item in the sequence (0-based), reading new items into the internal reservoir if necessary- Parameters:
- n- the index of the required item
- Returns:
- the Nth item if it exists, or null otherwise
- Throws:
- XPathException- if the input sequence cannot be read
 
 
- 
 
-