org.objectweb.medor.filter.api

Interface ExpressionHelper

Known Implementing Classes:
PostfixExpressionHelper

public interface ExpressionHelper

Author:
Sebastien Chassande-Barrioz

Method Summary

Operand
evaluate(Expression[] stack, ParameterOperand[] parameters, Tuple t)
void
fixIndexes(QueryNode node, Expression e)
For a given Expression used at a QueryNode, sets the index of its FieldOperands (index in the tuple resulting from the concatenation of the children QueryNode tuples).
String[]
getParameterNames(Expression e)
Expression
join(Expression[] es)
Expression
substituteParameters(ParameterOperand[] pos, Expression e)
Expression[]
substituteParameters(ParameterOperand[] pos, Expression[] e)
Expression[]
toStack(Expression e)

Method Details

evaluate

public Operand evaluate(Expression[] stack,
                        ParameterOperand[] parameters,
                        Tuple t)
            throws MedorException,
                   ExpressionException,
                   IllegalStateException


fixIndexes

public void fixIndexes(QueryNode node,
                       Expression e)
For a given Expression used at a QueryNode, sets the index of its FieldOperands (index in the tuple resulting from the concatenation of the children QueryNode tuples). It will call the setIndex method of FieldOperand.

Parameters:

See Also:
FieldOperand


getParameterNames

public String[] getParameterNames(Expression e)
            throws ExpressionException,
                   TypingException


join

public Expression join(Expression[] es)
            throws ExpressionException,
                   TypingException


substituteParameters

public Expression substituteParameters(ParameterOperand[] pos,
                                       Expression e)
            throws ExpressionException,
                   TypingException


substituteParameters

public Expression[] substituteParameters(ParameterOperand[] pos,
                                         Expression[] e)
            throws ExpressionException,
                   TypingException


toStack

public Expression[] toStack(Expression e)
            throws ExpressionException,
                   TypingException