Package net.sf.saxon.pattern
Class UnionPattern
- java.lang.Object
-
- net.sf.saxon.pattern.Pattern
-
- net.sf.saxon.pattern.VennPattern
-
- net.sf.saxon.pattern.UnionPattern
-
- All Implemented Interfaces:
java.io.Serializable
,javax.xml.transform.SourceLocator
,Container
,PatternFinder
public class UnionPattern extends VennPattern
A pattern formed as the union (or) of two other patterns- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.pattern.VennPattern
p1, p2
-
-
Constructor Summary
Constructors Constructor Description UnionPattern(Pattern p1, Pattern p2)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object other)
Determine whether this pattern is the same as another patternint
hashCode()
Hashcode supporting equals()boolean
matches(Item item, XPathContext context)
Determine if the supplied node matches the patternboolean
matchesBeneathAnchor(NodeInfo node, NodeInfo anchor, XPathContext context)
Determine whether this pattern matches a given Node within the subtree rooted at a given anchor node.-
Methods inherited from class net.sf.saxon.pattern.VennPattern
allocateSlots, analyze, bindVariable, gatherComponentPatterns, getDependencies, getItemType, getLHS, getNodeKind, getRHS, getVariableBindingExpression, iterateSubExpressions, promote, replaceSubExpression, resolveCurrent, setExecutable, setLineNumber, setOriginalText, setSystemId, setVariableBindingExpression, simplify
-
Methods inherited from class net.sf.saxon.pattern.Pattern
getColumnNumber, getContainerGranularity, getDefaultPriority, getExecutable, getFingerprint, getHostLanguage, getLineNumber, getLocationProvider, getPublicId, getSystemId, internalMatches, make, selectNodes, toString
-
-
-
-
Method Detail
-
matches
public boolean matches(Item item, XPathContext context) throws XPathException
Determine if the supplied node matches the pattern- Specified by:
matches
in classPattern
- Parameters:
item
- the node to be comparedcontext
- The dynamic context. Only relevant if the pattern uses variables, or contains calls on functions such as document() or key().- Returns:
- true if the node matches either of the operand patterns
- Throws:
XPathException
- if a dynamic error occurs during pattern matching
-
matchesBeneathAnchor
public boolean matchesBeneathAnchor(NodeInfo node, NodeInfo anchor, XPathContext context) throws XPathException
Determine whether this pattern matches a given Node within the subtree rooted at a given anchor node. This method is used when the pattern is used for streaming.- Overrides:
matchesBeneathAnchor
in classPattern
- Parameters:
node
- The NodeInfo representing the Element or other node to be tested against the Patternanchor
- The anchor node, which must match any AnchorPattern subpatterncontext
- The dynamic context. Only relevant if the pattern uses variables, or contains calls on functions such as document() or key().- Returns:
- true if the node matches the Pattern, false otherwise
- Throws:
XPathException
- if a dynamic error occurs during pattern matching
-
equals
public boolean equals(java.lang.Object other)
Determine whether this pattern is the same as another pattern- Overrides:
equals
in classVennPattern
- Parameters:
other
- the other object
-
hashCode
public int hashCode()
Hashcode supporting equals()- Overrides:
hashCode
in classVennPattern
-
-