Class AndExpression

All Implemented Interfaces:
Serializable, SourceLocator, LocationProvider, SaxonLocator, Negatable, InstructionInfo, Locator

public class AndExpression extends BooleanExpression
See Also:
  • Constructor Details

    • AndExpression

      public AndExpression(Expression p1, Expression p2)
      Construct a boolean AND expression
      Parameters:
      p1 - the first operand
      p2 - the second operand
  • Method Details

    • optimize

      public Expression optimize(ExpressionVisitor visitor, ExpressionVisitor.ContextItemType contextItemType) throws XPathException
      Perform optimisation of an expression and its subexpressions.

      This method is called after all references to functions and variables have been resolved to the declaration of the function or variable, and after all type checking has been done.

      Overrides:
      optimize in class BooleanExpression
      Parameters:
      visitor - an expression visitor
      contextItemType - the static type of "." at the point where this expression is invoked. The parameter is set to null if it is known statically that the context item will be undefined. If the type of the context item is not known statically, the argument is set to Type.ITEM_TYPE
      Returns:
      the original expression, rewritten if appropriate to optimize execution
      Throws:
      XPathException - if an error is discovered during this phase (typically a type error)
    • copy

      public Expression copy()
      Copy an expression. This makes a deep copy.
      Specified by:
      copy in class Expression
      Returns:
      the copy of the original expression
    • negate

      public Expression negate()
      Return the negation of this boolean expression, that is, an expression that returns true when this expression returns false, and vice versa
      Specified by:
      negate in interface Negatable
      Specified by:
      negate in class BooleanExpression
      Returns:
      the negation of this expression
    • effectiveBooleanValue

      public boolean effectiveBooleanValue(XPathContext c) throws XPathException
      Evaluate as a boolean.
      Specified by:
      effectiveBooleanValue in class BooleanExpression
      Parameters:
      c - The context in which the expression is to be evaluated
      Returns:
      the effective boolean value
      Throws:
      XPathException - if any dynamic error occurs evaluating the expression