Package com.icl.saxon.expr
Class ArithmeticExpression
- java.lang.Object
-
- com.icl.saxon.expr.Expression
-
- com.icl.saxon.expr.BinaryExpression
-
- com.icl.saxon.expr.ArithmeticExpression
-
class ArithmeticExpression extends BinaryExpression
Arithmetic Expression: a numeric expression consisting of the sum, difference, product, quotient, or modulus of two numeric expressions
-
-
Field Summary
-
Fields inherited from class com.icl.saxon.expr.BinaryExpression
operator, p1, p2
-
Fields inherited from class com.icl.saxon.expr.Expression
staticContext
-
-
Constructor Summary
Constructors Constructor Description ArithmeticExpression()ArithmeticExpression(Expression p1, int operator, Expression p2)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Valueevaluate(Context c)Evaluate an expression.doubleevaluateAsNumber(Context c)Evaluate an expression as a Number.intgetDataType()Determine the data type of the expression, if possibleExpressionreduce(int dependencies, Context context)Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.-
Methods inherited from class com.icl.saxon.expr.BinaryExpression
display, getDependencies, setDetails, simplify
-
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, enumerate, evaluateAsBoolean, evaluateAsNodeSet, evaluateAsString, getStaticContext, indent, isContextDocumentNodeSet, make, outputStringValue, setStaticContext, usesCurrent
-
-
-
-
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:
evaluatein classExpression- 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:
evaluateAsNumberin classExpression- 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:
getDataTypein classExpression- 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:
reducein classExpression- Parameters:
dependencies- The dependencies to be removedcontext- The context to be used for the partial evaluation- Returns:
- a new expression that does not have any of the specified dependencies
- Throws:
XPathException
-
-