Package org.apache.druid.math.expr
Class ApplyFunction.FoldLambdaBinding
- java.lang.Object
-
- org.apache.druid.math.expr.ApplyFunction.FoldLambdaBinding
-
- All Implemented Interfaces:
ApplyFunction.IndexableFoldLambdaBinding
,Expr.InputBindingInspector
,Expr.ObjectBinding
- Enclosing interface:
- ApplyFunction
public static class ApplyFunction.FoldLambdaBinding extends Object implements ApplyFunction.IndexableFoldLambdaBinding
ApplyFunction.IndexableFoldLambdaBinding
for aApplyFunction.FoldFunction
. LikeApplyFunction.MapLambdaBinding
but with additional information to track and provide binding values for an accumulator.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ApplyFunction.FoldLambdaBinding
accumulateWithIndex(int index, Object acc)
Update the index and accumulator valueObject
get(String name)
Get value binding for string identifier ofIdentifierExpr
ExpressionType
getAccumulatorType()
int
getLength()
Total number of bindings in this bindingExpressionType
getType(String name)
Get theExpressionType
from the backing store for a given identifier (this is likely a column, but could be other things depending on the backing adapter)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.math.expr.Expr.InputBindingInspector
areNumeric, areNumeric, areSameTypes, areSameTypes, areScalar, areScalar, canVectorize, canVectorize
-
-
-
-
Method Detail
-
get
@Nullable public Object get(String name)
Description copied from interface:Expr.ObjectBinding
Get value binding for string identifier ofIdentifierExpr
- Specified by:
get
in interfaceExpr.ObjectBinding
-
getAccumulatorType
public ExpressionType getAccumulatorType()
- Specified by:
getAccumulatorType
in interfaceApplyFunction.IndexableFoldLambdaBinding
-
getLength
public int getLength()
Description copied from interface:ApplyFunction.IndexableFoldLambdaBinding
Total number of bindings in this binding- Specified by:
getLength
in interfaceApplyFunction.IndexableFoldLambdaBinding
-
accumulateWithIndex
public ApplyFunction.FoldLambdaBinding accumulateWithIndex(int index, Object acc)
Description copied from interface:ApplyFunction.IndexableFoldLambdaBinding
Update the index and accumulator value- Specified by:
accumulateWithIndex
in interfaceApplyFunction.IndexableFoldLambdaBinding
-
getType
@Nullable public ExpressionType getType(String name)
Description copied from interface:Expr.InputBindingInspector
Get theExpressionType
from the backing store for a given identifier (this is likely a column, but could be other things depending on the backing adapter)- Specified by:
getType
in interfaceExpr.InputBindingInspector
-
-