net.sf.saxon.expr
Class FilterIterator.Leading
java.lang.Object
net.sf.saxon.expr.FilterIterator
net.sf.saxon.expr.FilterIterator.Leading
- All Implemented Interfaces:
- SequenceIterator
- Enclosing class:
- FilterIterator
public static final class FilterIterator.Leading
- extends FilterIterator
Subclass to support the extension function saxon:leading, which terminates
the iteration at the first item whose predicate is false
Method Summary |
SequenceIterator |
getAnother()
Get another iterator to return the same nodes |
protected Item |
getNextMatchingItem()
Get the next node that matches the filter predicate if there is one |
protected boolean |
matches()
Determine whether the context item matches the filter predicate |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FilterIterator.Leading
public FilterIterator.Leading(SequenceIterator base,
Expression filter,
XPathContext context)
- Create a FilterIterate that terminates at the first item for which the predicate
evaluates to false
- Parameters:
base
- iterator over the sequence to be filteredfilter
- the filter expression - always evaluated as a booleancontext
- the outer context for the filter expression as a whole; a new
context will be created for evaluating the predicate
matches
protected boolean matches()
throws XPathException
- Determine whether the context item matches the filter predicate
- Overrides:
matches
in class FilterIterator
- Returns:
- true if the context item matches
- Throws:
XPathException
getNextMatchingItem
protected Item getNextMatchingItem()
throws XPathException
- Get the next node that matches the filter predicate if there is one
- Overrides:
getNextMatchingItem
in class FilterIterator
- Returns:
- the next item that matches the predicate
- Throws:
XPathException
getAnother
public SequenceIterator getAnother()
throws XPathException
- Get another iterator to return the same nodes
- Specified by:
getAnother
in interface SequenceIterator
- Overrides:
getAnother
in class FilterIterator
- Returns:
- a SequenceIterator that iterates over the same items,
positioned before the first item
- Throws:
XPathException
- if any error occurs
Copyright (c) Saxonica Limited. All rights reserved.