Class DyadicExpression
- java.lang.Object
-
- org.datanucleus.store.query.expression.Expression
-
- org.datanucleus.store.query.expression.DyadicExpression
-
- All Implemented Interfaces:
Serializable
public class DyadicExpression extends Expression
Expression between two other expressions and an operation. For example, "this.myField < myValue" will become left = PrimaryExpression, right = Literal, op = Expression.OP_LT. A special case is where we have an expression like "!(condition)". In this case we become left = expression, right = null, op = Expression.OP_NOT.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.datanucleus.store.query.expression.Expression
Expression.DyadicOperator, Expression.MonadicOperator, Expression.Operator
-
-
Field Summary
-
Fields inherited from class org.datanucleus.store.query.expression.Expression
alias, left, op, OP_ADD, OP_AND, OP_BIT_AND, OP_BIT_OR, OP_BIT_XOR, OP_CAST, OP_COM, OP_CONCAT, OP_DISTINCT, OP_DIV, OP_EQ, OP_GT, OP_GTEQ, OP_IN, OP_IS, OP_ISNOT, OP_LIKE, OP_LT, OP_LTEQ, OP_MOD, OP_MUL, OP_NEG, OP_NOT, OP_NOTEQ, OP_NOTIN, OP_OR, OP_SUB, parent, right, symbol
-
-
Constructor Summary
Constructors Constructor Description DyadicExpression(Expression.MonadicOperator op, Expression operand)
Perform a functionop
onoperand
DyadicExpression(Expression operand1, Expression.DyadicOperator op, Expression operand2)
Performs a function on two arguments.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Symbol
bind(SymbolTable symtbl)
Method to bind the expression to the symbol table as appropriate.Object
evaluate(ExpressionEvaluator eval)
Method to evaluate this expression, using the passed evaluator.String
toString()
-
Methods inherited from class org.datanucleus.store.query.expression.Expression
getAlias, getLeft, getOperator, getParent, getRight, getSymbol, setAlias, setLeft, setRight
-
-
-
-
Constructor Detail
-
DyadicExpression
public DyadicExpression(Expression.MonadicOperator op, Expression operand)
Perform a functionop
onoperand
- Parameters:
op
- operatoroperand
- operand
-
DyadicExpression
public DyadicExpression(Expression operand1, Expression.DyadicOperator op, Expression operand2)
Performs a function on two arguments. op(operand1,operand2) operand1 op operand2- Parameters:
operand1
- the first expressionop
- the operator between operandsoperand2
- the second expression
-
-
Method Detail
-
evaluate
public Object evaluate(ExpressionEvaluator eval)
Method to evaluate this expression, using the passed evaluator.- Overrides:
evaluate
in classExpression
- Parameters:
eval
- Evaluator- Returns:
- The result
-
bind
public Symbol bind(SymbolTable symtbl)
Method to bind the expression to the symbol table as appropriate.- Specified by:
bind
in classExpression
- Parameters:
symtbl
- Symbol table- Returns:
- The symbol for this expression
-
-