net.sf.saxon.expr
public class ArithmeticExpression extends BinaryExpression
Field Summary | |
---|---|
protected boolean | simplified |
Constructor Summary | |
---|---|
ArithmeticExpression(Expression p0, int operator, Expression p1)
Create an arithmetic expression |
Method Summary | |
---|---|
static AtomicValue | compute(AtomicValue value0, int operator, AtomicValue value1, XPathContext context)
Static method to apply arithmetic to two values |
Expression | copy()
Copy an expression. |
Item | evaluateItem(XPathContext context)
Evaluate the expression. |
Calculator | getCalculator()
Get the calculator allocated to evaluate this expression |
ItemType | getItemType(TypeHierarchy th)
Determine the data type of the expression, insofar as this is known statically |
static int | mapOpCode(int op)
Map operator codes from those in the Token class to those in the Calculator class |
Expression | simplify(ExpressionVisitor visitor) |
Expression | typeCheck(ExpressionVisitor visitor, ItemType contextItemType)
Type-check the expression statically. |
Parameters: p0 the first operand operator the operator, for example PLUS p1 the second operand
Parameters: value0 the first value operator the operator as denoted in the Calculator class, for example PLUS value1 the second value context the XPath dynamic evaluation context
Returns: the result of the arithmetic operation
Returns: the copy of the original expression
Returns: the calculator, a helper object that does the actual calculation
Parameters: th the type hierarchy cache
Returns: the atomic type of the result of this arithmetic expression
Parameters: op an operator denoted by a constant in the Token class, for example PLUS
Returns: an operator denoted by a constant defined in the Calculator class, for example PLUS