Class ExceptPattern

  • All Implemented Interfaces:
    java.io.Serializable, javax.xml.transform.SourceLocator, Container, PatternFinder

    public class ExceptPattern
    extends VennPattern
    A pattern formed as the difference of two other patterns
    See Also:
    Serialized Form
    • Constructor Detail

      • ExceptPattern

        public ExceptPattern​(Pattern p1,
                             Pattern p2)
        Constructor
        Parameters:
        p1 - the left-hand operand
        p2 - the right-hand operand
    • Method Detail

      • 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​(java.lang.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