net.sf.saxon.expr
Class ArithmeticExpression.NumericArithmetic

java.lang.Object
  extended by net.sf.saxon.expr.ComputedExpression
      extended by net.sf.saxon.expr.BinaryExpression
          extended by net.sf.saxon.expr.ArithmeticExpression
              extended by net.sf.saxon.expr.ArithmeticExpression.NumericArithmetic
All Implemented Interfaces:
java.io.Serializable, javax.xml.transform.SourceLocator, Container, Expression, InstructionInfoProvider
Enclosing class:
ArithmeticExpression

public static class ArithmeticExpression.NumericArithmetic
extends ArithmeticExpression

Inner class to handle numeric arithmetic expressions

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.saxon.expr.ArithmeticExpression
ArithmeticExpression.DateAndDuration, ArithmeticExpression.DateDifference, ArithmeticExpression.DurationAddition, ArithmeticExpression.DurationDivision, ArithmeticExpression.DurationMultiplication, ArithmeticExpression.NumericArithmetic
 
Field Summary
(package private)  boolean backwardsCompatible
           
 
Fields inherited from class net.sf.saxon.expr.BinaryExpression
operand0, operand1, operator
 
Fields inherited from class net.sf.saxon.expr.ComputedExpression
locationId, staticProperties
 
Fields inherited from interface net.sf.saxon.expr.Expression
EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD
 
Constructor Summary
ArithmeticExpression.NumericArithmetic(Expression p1, int operator, Expression p2)
           
 
Method Summary
static Item doArithmetic(Expression operand0, int operator, Expression operand1, XPathContext context, boolean backwardsCompatible)
           
 Item evaluateItem(XPathContext context)
          Evaluate the expression.
 void setBackwardsCompatible(boolean flag)
           
 
Methods inherited from class net.sf.saxon.expr.ArithmeticExpression
getItemType, typeCheck
 
Methods inherited from class net.sf.saxon.expr.BinaryExpression
computeCardinality, computeSpecialProperties, display, displayOperator, equals, getOperands, getOperator, hashCode, isAssociative, isCommutative, isInverse, iterateSubExpressions, optimize, promote, simplify
 
Methods inherited from class net.sf.saxon.expr.ComputedExpression
adoptChildExpression, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, dynamicError, effectiveBooleanValue, evaluateAsString, getCardinality, getColumnNumber, getConstructType, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getInstructionInfo, getIntrinsicDependencies, getLineNumber, getLocationId, getLocationProvider, getParentExpression, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasBadParentPointer, iterate, markTailFunctionCalls, process, resetStaticProperties, setLocationId, setParentExpression, suppressValidation, typeError, typeError
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

backwardsCompatible

boolean backwardsCompatible
Constructor Detail

ArithmeticExpression.NumericArithmetic

public ArithmeticExpression.NumericArithmetic(Expression p1,
                                              int operator,
                                              Expression p2)
Method Detail

setBackwardsCompatible

public void setBackwardsCompatible(boolean flag)

evaluateItem

public Item evaluateItem(XPathContext context)
                  throws XPathException
Evaluate the expression.

Specified by:
evaluateItem in interface Expression
Overrides:
evaluateItem in class ArithmeticExpression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
Throws:
XPathException - if any dynamic error occurs evaluating the expression

doArithmetic

public static Item doArithmetic(Expression operand0,
                                int operator,
                                Expression operand1,
                                XPathContext context,
                                boolean backwardsCompatible)
                         throws XPathException
Throws:
XPathException