Class ExprAggregateNodeUtil
java.lang.Object
com.espertech.esper.common.internal.epl.expression.agg.base.ExprAggregateNodeUtil
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic int
countPositionalArgs
(List<ExprNode> args) static void
getAggregatesBottomUp
(ExprNode[][] nodes, List<ExprAggregateNode> aggregateNodes) static void
getAggregatesBottomUp
(ExprNode[] nodes, List<ExprAggregateNode> aggregateNodes) static void
getAggregatesBottomUp
(ExprNode topNode, List<ExprAggregateNode> aggregateNodes) Populates into the supplied list all aggregation functions within this expression, if any.static ExprAggregateNodeParamDesc
getValidatePositionalParams
(ExprNode[] childNodes, boolean builtinAggregationFunc) static boolean
-
Constructor Details
-
ExprAggregateNodeUtil
public ExprAggregateNodeUtil()
-
-
Method Details
-
getValidatePositionalParams
public static ExprAggregateNodeParamDesc getValidatePositionalParams(ExprNode[] childNodes, boolean builtinAggregationFunc) throws ExprValidationException - Throws:
ExprValidationException
-
isNonPositionalParameter
-
getAggregatesBottomUp
public static void getAggregatesBottomUp(ExprNode[][] nodes, List<ExprAggregateNode> aggregateNodes) -
getAggregatesBottomUp
-
getAggregatesBottomUp
Populates into the supplied list all aggregation functions within this expression, if any.Populates by going bottom-up such that nested aggregates appear first.
I.e. sum(volume * sum(price)) would put first A then B into the list with A=sum(price) and B=sum(volume * A)
- Parameters:
topNode
- is the expression node to deep inspectaggregateNodes
- is a list of node to populate into
-
countPositionalArgs
-