Class BinaryOperation
- java.lang.Object
-
- org.apache.sling.scripting.sightly.compiler.expression.nodes.BinaryOperation
-
- All Implemented Interfaces:
ExpressionNode
public final class BinaryOperation extends java.lang.Object implements ExpressionNode
A {code BinaryOperation} defines an expression where a binary operator is applied (e.g. "a AND b").
-
-
Constructor Summary
Constructors Constructor Description BinaryOperation(BinaryOperator operator, ExpressionNode leftOperand, ExpressionNode rightOperand)
Creates aBinaryOperation
.BinaryOperation(BinaryOperator operator, ExpressionNode leftOperand, ExpressionNode rightOperand, Expression parentExpression)
Creates aBinaryOperation
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> T
accept(NodeVisitor<T> visitor)
Accept a visitor to process this node.ExpressionNode
getLeftOperand()
Returns the left operand.BinaryOperator
getOperator()
Returns the operator of the operation.Expression
getParentExpression()
Returns the parent expression, if any.ExpressionNode
getRightOperand()
Returns the right operand.java.lang.String
toString()
BinaryOperation
withParentExpression(Expression parentExpression)
Returns a copy of thisBinaryOperation
that contains information about the node's parent expression.
-
-
-
Constructor Detail
-
BinaryOperation
public BinaryOperation(BinaryOperator operator, ExpressionNode leftOperand, ExpressionNode rightOperand)
Creates aBinaryOperation
.- Parameters:
operator
- the operatorleftOperand
- the left operandrightOperand
- the right operand
-
BinaryOperation
public BinaryOperation(BinaryOperator operator, ExpressionNode leftOperand, ExpressionNode rightOperand, Expression parentExpression)
Creates aBinaryOperation
.- Parameters:
operator
- the operatorleftOperand
- the left operandrightOperand
- the right operandparentExpression
- the parent expression of this operation
-
-
Method Detail
-
getOperator
public BinaryOperator getOperator()
Returns the operator of the operation.- Returns:
- the operator
-
getLeftOperand
public ExpressionNode getLeftOperand()
Returns the left operand.- Returns:
- the left operand
-
getRightOperand
public ExpressionNode getRightOperand()
Returns the right operand.- Returns:
- the right operand.
-
getParentExpression
public Expression getParentExpression()
Returns the parent expression, if any.- Returns:
- the parent expression or
null
-
withParentExpression
public BinaryOperation withParentExpression(Expression parentExpression)
Returns a copy of thisBinaryOperation
that contains information about the node's parent expression.- Parameters:
parentExpression
- the parent expression- Returns:
- a copy of the original
BinaryOperation
-
accept
public <T> T accept(NodeVisitor<T> visitor)
Description copied from interface:ExpressionNode
Accept a visitor to process this node.- Specified by:
accept
in interfaceExpressionNode
- Type Parameters:
T
- the type of the visitor- Parameters:
visitor
- The visitor- Returns:
- the node after it has been evaluated by the visitor
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-