/** * tests if current expression is an indexed function AND the function has also to be executed after the index search. In some * cases, the index search is accurate, so this condition can be excluded from further evaluation. In other cases the result from * the index is a superset of the expected result, so the function has to be executed anyway for further filtering * * @param target the query target * @param context the execution context * * @return true if current expression involves an indexed function AND the function has also to be executed after the index * search. */ public boolean executeIndexedFunctionAfterIndexSearch(OFromClause target, OCommandContext context, OBinaryCompareOperator operator, Object right) { if (mathExpression != null) { return mathExpression.executeIndexedFunctionAfterIndexSearch(target, context, operator, right); } return false; }
/** * tests if current expression is an indexed function AND the function has also to be executed after the index search. In some * cases, the index search is accurate, so this condition can be excluded from further evaluation. In other cases the result from * the index is a superset of the expected result, so the function has to be executed anyway for further filtering * * @param target the query target * @param context the execution context * * @return true if current expression is an indexed function AND the function has also to be executed after the index search. */ public boolean executeIndexedFunctionAfterIndexSearch(OFromClause target, OCommandContext context, OBinaryCompareOperator operator, Object right) { if (this.childExpressions.size() != 1) { return false; } return this.childExpressions.get(0).executeIndexedFunctionAfterIndexSearch(target, context, operator, right); }