org.jaxen.expr
Class PredicateSet
java.lang.Object
org.jaxen.expr.PredicateSet
- Serializable
public class PredicateSet
extends java.lang.Object
implements Serializable
Represents the collection of predicates that follow the node-test in a
location path.
There is no rule that the same predicate may not
appear twice in an XPath expression, nor does this class enforce any such rule.
This is implemented more as a list than a set. However, adding the swme predicate
twice should have no effect on the final result other than slowing it down.
predicates
private List predicates
serialVersionUID
private static final long serialVersionUID
PredicateSet
public PredicateSet()
Create a new empty predicate set.
addPredicate
public void addPredicate(Predicate predicate)
Add a predicate to the set.
predicate
- the predicate to be inserted
evaluateAsBoolean
protected boolean evaluateAsBoolean(List contextNodeSet,
ContextSupport support)
throws JaxenException
Returns true if any of the supplied nodes satisfy
all the predicates in the set. Returns false if none of the supplied
nodes matches all the predicates in the set. Returns false if the
node-set is empty.
contextNodeSet
- the nodes to test against these predicatessupport
- ????
- true if any node in the contextNodeSet matches all the predicates
evaluatePredicates
protected List evaluatePredicates(List contextNodeSet,
ContextSupport support)
throws JaxenException
Returns all of the supplied nodes that satisfy
all the predicates in the set.
contextNodeSet
- the nodes to test against these predicatessupport
- ????
- all the nodes that match each of the predicates
getPredicates
public List getPredicates()
Returns the list containing the predicates.
This list is live, not a copy.
- a live list of predicates
getText
public String getText()
Returns the XPath string containing each of the predicates.
- the XPath string containing each of the predicates
simplify
public void simplify()
Simplify each of the predicates in the list.