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.
|
Method Summary |
boolean |
hasMoreElements()
Test whether there are any more nodes available in the enumeration |
boolean |
isPeer()
Determine whether the nodes are guaranteed to be peers |
boolean |
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 order |
NodeInfo |
nextElement()
Get the next node if there is one |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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
hasMoreElements
public boolean hasMoreElements()
- Test whether there are any more nodes available in the enumeration
- Specified by:
hasMoreElements in interface NodeEnumeration
- Following copied from interface:
com.icl.saxon.om.NodeEnumeration
- 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 interface NodeEnumeration
- Following copied from interface:
com.icl.saxon.om.NodeEnumeration
- Returns:
- the next NodeInfo
isSorted
public boolean isSorted()
- Determine whether the nodes are guaranteed to be in document order
- Specified by:
isSorted in interface NodeEnumeration
- Following copied from interface:
com.icl.saxon.om.NodeEnumeration
- 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 interface NodeEnumeration
- Following copied from interface:
com.icl.saxon.om.NodeEnumeration
- 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 interface NodeEnumeration