public class IntOperation extends Object implements Expression
Modifier and Type | Field and Description |
---|---|
protected Expression |
leftExpression |
protected Operator |
operator |
protected Expression |
rightExpression |
Constructor and Description |
---|
IntOperation(Operator operator,
Expression leftExpression,
Expression rightExpression)
Creates a new operation with the given operator and operands.
|
Modifier and Type | Method and Description |
---|---|
Expression |
copy()
Creates a deep copy of the expression which can be modified without affecting the original expression.
|
Object |
eval(LocalRenderContext ctx)
Evaluates the expression into an object using the given context.
|
Class<?> |
getType()
Returns the Java class of the objects yielded by this expression.
|
boolean |
isConstant()
Determines if the expression is constant.
|
Expression |
propagateVisitor(ExpressionVisitor visitor)
Visits all child nodes and then the node itself.
|
Expression |
reduce()
Reduces and optimizes the expression if possible.
|
String |
toString() |
protected Expression leftExpression
protected Expression rightExpression
protected Operator operator
public IntOperation(Operator operator, Expression leftExpression, Expression rightExpression)
operator
- the operator to applyleftExpression
- the left operandrightExpression
- the right operandpublic Expression propagateVisitor(ExpressionVisitor visitor)
Expression
propagateVisitor
in interface Expression
visitor
- the visitor to invoke for all child nodes and on the node itselfpublic Expression copy()
Expression
copy
in interface Expression
public Expression reduce()
Expression
reduce
in interface Expression
public boolean isConstant()
Expression
isConstant
in interface Expression
public Object eval(LocalRenderContext ctx)
Expression
eval
in interface Expression
ctx
- the current rendering contextpublic Class<?> getType()
Expression
getType
in interface Expression
Copyright © 2018. All rights reserved.