Package com.icl.saxon.expr
Class FilterEnumerator
- java.lang.Object
-
- com.icl.saxon.expr.FilterEnumerator
-
- All Implemented Interfaces:
NodeEnumeration
public class FilterEnumerator extends java.lang.Object implements NodeEnumeration
A FilterEnumerator filters an input NodeEnumeration using a filter expression. The complication is that on request, it must determine the value of the last() position, which requires a lookahead.
-
-
Constructor Summary
Constructors Constructor Description FilterEnumerator(NodeEnumeration base, Expression filter, Context context, boolean finishAfterReject)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
hasMoreElements()
Test whether there are any more nodes available in the enumerationboolean
isPeer()
Determine whether the nodes are guaranteed to be peersboolean
isReverseSorted()
Determine whether the nodes returned by this enumeration are known to be in reverse document order.boolean
isSorted()
Determine whether the nodes are guaranteed to be in document orderNodeInfo
nextElement()
Get the next node if there is one
-
-
-
Constructor Detail
-
FilterEnumerator
public FilterEnumerator(NodeEnumeration base, Expression filter, Context context, boolean finishAfterReject) throws XPathException
Constructor- Parameters:
base
- A node-set expression denoting the absolute or relative set of nodes from which the navigation path should start.filter
- The expression defining the filter predicatecontext
- The context in which the expression is being evaluatedfinishAfterReject
- : terminate enumeration on first failure- Throws:
XPathException
-
-
Method Detail
-
hasMoreElements
public boolean hasMoreElements()
Test whether there are any more nodes available in the enumeration- Specified by:
hasMoreElements
in interfaceNodeEnumeration
- Returns:
- true if there are more nodes
-
nextElement
public NodeInfo nextElement() throws XPathException
Get the next node if there is one- Specified by:
nextElement
in interfaceNodeEnumeration
- Returns:
- the next NodeInfo
- Throws:
XPathException
-
isSorted
public boolean isSorted()
Determine whether the nodes are guaranteed to be in document order- Specified by:
isSorted
in interfaceNodeEnumeration
- Returns:
- true if the nodes are guaranteed to be in document order.
-
isReverseSorted
public boolean isReverseSorted()
Description copied from interface:NodeEnumeration
Determine whether the nodes returned by this enumeration are known to be in reverse document order.- Specified by:
isReverseSorted
in interfaceNodeEnumeration
- Returns:
- true if the nodes are guaranteed to be in document order.
-
isPeer
public boolean isPeer()
Determine whether the nodes are guaranteed to be peers- Specified by:
isPeer
in interfaceNodeEnumeration
-
-