net.sf.saxon.expr
Class FilterIterator.NonNumeric
java.lang.Object
net.sf.saxon.expr.FilterIterator
net.sf.saxon.expr.FilterIterator.NonNumeric
- All Implemented Interfaces:
- SequenceIterator
- Enclosing class:
- FilterIterator
public static final class FilterIterator.NonNumeric
- extends FilterIterator
Subclass to handle the common special case where it is statically known
that the filter cannot return a numeric value
Method Summary |
SequenceIterator |
getAnother()
Get another iterator to return the same nodes |
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.NonNumeric
public FilterIterator.NonNumeric(SequenceIterator base,
Expression filter,
XPathContext context)
- Create a CompiledFilterIterator for the situation where it is known that the filter
expression will never evaluate to a number value. For this case we can simply
use the effective boolean value of the predicate
- Parameters:
base
- iterator over the sequence to be filteredfilter
- the filter expressioncontext
- the current context (for evaluating the filter expression as a whole).
A new context will be created to evaluate 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
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) 2004-2011 Saxonica Limited. All rights reserved.