Class UnionPattern

All Implemented Interfaces:
Serializable, SourceLocator, Container, PatternFinder

public class UnionPattern extends VennPattern
A pattern formed as the union (or) of two other patterns
See Also:
  • Constructor Details

    • UnionPattern

      public UnionPattern(Pattern p1, Pattern p2)
      Constructor
      Parameters:
      p1 - the left-hand operand
      p2 - the right-hand operand
  • Method Details

    • matches

      public boolean matches(Item item, XPathContext context) throws XPathException
      Determine if the supplied node matches the pattern
      Specified by:
      matches in class Pattern
      Parameters:
      item - the node to be compared
      context - 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 class Pattern
      Parameters:
      node - The NodeInfo representing the Element or other node to be tested against the Pattern
      anchor - The anchor node, which must match any AnchorPattern subpattern
      context - 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(Object other)
      Determine whether this pattern is the same as another pattern
      Overrides:
      equals in class VennPattern
      Parameters:
      other - the other object
    • hashCode

      public int hashCode()
      Hashcode supporting equals()
      Overrides:
      hashCode in class VennPattern