org.apache.xpath.operations
Class Operation
java.lang.Object
|
+--org.apache.xpath.Expression
|
+--org.apache.xpath.operations.Operation
- Direct Known Subclasses:
- And, Div, Equals, Gt, Gte, Lt, Lte, Minus, Mod, Mult, NotEquals, Or, Plus, Quo
- public class Operation
- extends Expression
- implements ExpressionOwner
The baseclass for a binary operation.
- See Also:
- Serialized Form
Methods inherited from class org.apache.xpath.Expression |
asIterator,
asIteratorRaw,
asNode,
assertion,
bool,
error,
execute,
execute,
execute,
executeCharsToContentHandler,
exprAddChild,
exprGetChild,
exprGetNumChildren,
exprGetParent,
exprSetParent,
getColumnNumber,
getExpressionOwner,
getLineNumber,
getPublicId,
getSystemId,
isNodesetExpr,
isStableNumber,
num,
warn,
xstr |
Methods inherited from class java.lang.Object |
equals,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Operation
public Operation()
fixupVariables
public void fixupVariables(java.util.Vector vars,
int globalsSize)
- This function is used to fixup variables from QNames to stack frame
indexes at stylesheet build time.
- Parameters:
vars
- List of QNames that correspond to variables. This list
should be searched backwards for the first qualified name that
corresponds to the variable reference qname. The position of the
QName in the vector from the start of the vector will be its position
in the stack frame (but variables above the globalsTop value will need
to be offset to the current stack frame).- Overrides:
- fixupVariables in class Expression
canTraverseOutsideSubtree
public boolean canTraverseOutsideSubtree()
- Tell if this expression or it's subexpressions can traverse outside
the current subtree.
- Returns:
- true if traversal outside the context node's subtree can occur.
- Overrides:
- canTraverseOutsideSubtree in class Expression
setLeftRight
public void setLeftRight(Expression l,
Expression r)
- Set the left and right operand expressions for this operation.
- Parameters:
l
- The left expression operand.r
- The right expression operand.
execute
public XObject execute(XPathContext xctxt)
throws TransformerException
- Execute a binary operation by calling execute on each of the operands,
and then calling the operate method on the derived class.
- Parameters:
xctxt
- The runtime execution context.- Returns:
- The XObject result of the operation.
- Throws:
- TransformerException -
- Overrides:
- execute in class Expression
operate
public XObject operate(XObject left,
XObject right)
throws TransformerException
- Apply the operation to two operands, and return the result.
- Parameters:
left
- non-null reference to the evaluated left operand.right
- non-null reference to the evaluated right operand.- Returns:
- non-null reference to the XObject that represents the result of the operation.
- Throws:
- TransformerException -
getLeftOperand
public Expression getLeftOperand()
- Returns:
- the left operand of binary operation, as an Expression.
getRightOperand
public Expression getRightOperand()
- Returns:
- the right operand of binary operation, as an Expression.
callVisitors
public void callVisitors(ExpressionOwner owner,
XPathVisitor visitor)
- See Also:
XPathVisitable#callVisitors(ExpressionOwner, XPathVisitor)
getExpression
public Expression getExpression()
- Specified by:
- getExpression in interface ExpressionOwner
- See Also:
ExpressionOwner.getExpression()
setExpression
public void setExpression(Expression exp)
- Specified by:
- setExpression in interface ExpressionOwner
- See Also:
ExpressionOwner.setExpression(Expression)
deepEquals
public boolean deepEquals(Expression expr)
- Overrides:
- deepEquals in class Expression
- See Also:
Expression.deepEquals(Expression)
Copyright © 2003 Apache XML Project. All Rights Reserved.