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 Value
evaluate(Context c)
Evaluate an expression.double
evaluateAsNumber(Context c)
Evaluate an expression as a Number.int
getDataType()
Determine the data type of the expression, if possibleExpression
reduce(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:
evaluate
in 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:
evaluateAsNumber
in 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:
getDataType
in 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:
reduce
in 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
-
-