com.hardcode.gdbms.engine.instruction
Class CompareExprAdapter
java.lang.Object
com.hardcode.gdbms.engine.instruction.Adapter
com.hardcode.gdbms.engine.instruction.AbstractExpression
com.hardcode.gdbms.engine.instruction.CompareExprAdapter
- All Implemented Interfaces:
- Expression
public class CompareExprAdapter
- extends AbstractExpression
- implements Expression
Adaptador sobre los nodos que representan una expresión condicional en el
arbol sintáctico
- Author:
- Fernando González Cortés
Method Summary |
void |
calculateLiteralCondition()
|
Value |
evaluate(long row)
Evalúa la expresión para la fila row |
java.lang.String |
getFieldName()
Obtiene el nombre del campo en el que consiste la expresión. |
boolean |
isLiteral()
Indica si los operandos de esta expresión son siempre los mismos o
pueden cambiar. |
void |
simplify()
Simplifica las expresiones del árbol de adaptadores |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CompareExprAdapter
public CompareExprAdapter()
evaluate
public Value evaluate(long row)
throws EvaluationException
- Description copied from interface:
Expression
- Evalúa la expresión para la fila row
- Specified by:
evaluate
in interface Expression
- Parameters:
row
- fila para la que se evalua la expresión
- Returns:
- Valor resultante de evaluar la expresión para la fila row
- Throws:
EvaluationException
- Si se produce algún error semántico- See Also:
Expression.evaluate(long)
getFieldName
public java.lang.String getFieldName()
- Description copied from interface:
Expression
- Obtiene el nombre del campo en el que consiste la expresión. En el caso
de que la expresión conste de alguna operación o no contenga ninguna
referencia a un campo se devolverá null.
- Specified by:
getFieldName
in interface Expression
- Returns:
- Nombre del campo
- See Also:
Expression.getFieldName()
isLiteral
public boolean isLiteral()
- Description copied from interface:
Expression
- Indica si los operandos de esta expresión son siempre los mismos o
pueden cambiar. Puede cambiar cuando el operando es una funcion o una
referencia a un campo y no debe cambiar en el resto de casos
- Specified by:
isLiteral
in interface Expression
- Returns:
- true si esta expresión va a devolver siempre el mismo valor
- See Also:
Expression.isLiteral()
simplify
public void simplify()
- Description copied from interface:
Expression
- Simplifica las expresiones del árbol de adaptadores
- Specified by:
simplify
in interface Expression
- See Also:
Expression.simplify()
calculateLiteralCondition
public void calculateLiteralCondition()
- See Also:
com.hardcode.gdbms.engine.instruction.Expression#calculateLiteralCondition()
Copyright © 2005-2006 . All Rights Reserved.