Class ArithmeticExpression


  • class ArithmeticExpression
    extends BinaryExpression
    Arithmetic Expression: a numeric expression consisting of the sum, difference, product, quotient, or modulus of two numeric expressions
    • Constructor Detail

      • ArithmeticExpression

        public ArithmeticExpression()
      • ArithmeticExpression

        public ArithmeticExpression​(Expression p1,
                                    int operator,
                                    Expression p2)
    • Method Detail

      • evaluate

        public Value evaluate​(Context c)
                       throws XPathException
        Evaluate an expression.
        Specified by:
        evaluate in class Expression
        Parameters:
        context - The context in which the expression is to be evaluated
        Returns:
        the value of the expression as a Value object, evaluated in the current context
        Throws:
        XPathException
      • evaluateAsNumber

        public double evaluateAsNumber​(Context c)
                                throws XPathException
        Evaluate an expression as a Number.
        Overrides:
        evaluateAsNumber in class Expression
        Parameters:
        context - The context in which the expression is to be evaluated
        Returns:
        the value of the expression as a double, evaluated in the current context
        Throws:
        XPathException
      • getDataType

        public int getDataType()
        Determine the data type of the expression, if possible
        Specified by:
        getDataType in class Expression
        Returns:
        Value.NUMBER
      • reduce

        public Expression reduce​(int dependencies,
                                 Context context)
                          throws XPathException
        Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.
        Specified by:
        reduce in class Expression
        Parameters:
        dependencies - The dependencies to be removed
        context - The context to be used for the partial evaluation
        Returns:
        a new expression that does not have any of the specified dependencies
        Throws:
        XPathException