Package net.sf.basedb.util.jep
Interface JepExpressionFunction
- All Superinterfaces:
JepFunction
,org.nfunk.jep.function.PostfixMathCommandI
- All Known Implementing Classes:
ChannelFunction
,ExtraValueFunction
,Log2Function
,MeanFunction
,PositionFunction
,RawChannelFunction
,RawFunction
,ReporterFunction
,ScoreFunction
This interface should be implemented by JEP functions
that can also be converted into an
Expression
that
can be used in queries.- Version:
- 2.0
- Author:
- Nicklas
- See Also:
- Last modified
- $Date: 2009-04-06 14:52:39 +0200 (må, 06 apr 2009) $
-
Method Summary
Modifier and TypeMethodDescriptiontoExpression
(Node node) Convert this function to anExpression
that can be used in a query.Methods inherited from interface net.sf.basedb.util.jep.JepFunction
getFunctionName
Methods inherited from interface org.nfunk.jep.function.PostfixMathCommandI
checkNumberOfParameters, getNumberOfParameters, run, setCurNumberOfParameters
-
Method Details
-
toExpression
Convert this function to anExpression
that can be used in a query. The implementation must check that the node contains the correct number of children (ie. arguments to the function) and convert the arguments to whatever is suitable for the expression. Example from theLog2Function
int numChildren = node.jjtGetNumChildren(); if (numChildren != 1) { throw new BaseException("Invalid number of arguments for 'log2' function: " + numChildren); } return Expressions.log2(Jep.nodeToExpression(node.jjtGetChild(0)));
- Parameters:
node
- The node representing this function- Returns:
- An
Expression
object
-