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

The baseclass for a binary operation.

See Also:
Serialized Form

Constructor Summary
Operation()
           
 
Method Summary
 boolean canTraverseOutsideSubtree()
          Tell if this expression or it's subexpressions can traverse outside the current subtree.
 XObject execute(XPathContext xctxt)
          Execute a binary operation by calling execute on each of the operands, and then calling the operate method on the derived class.
 XObject operate(XObject left, XObject right)
          Apply the operation to two operands, and return the result.
 void setLeftRight(Expression l, Expression r)
          Set the left and right operand expressions for this operation.
 
Methods inherited from class org.apache.xpath.Expression
assertion, error, setSourceLocator, warn
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Operation

public Operation()
Method Detail

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 -  


Copyright © 2000 Apache XML Project. All Rights Reserved.