Package org.apache.druid.math.expr
Class ApplyFunction.CartesianFoldLambdaBinding
- java.lang.Object
-
- org.apache.druid.math.expr.ApplyFunction.CartesianFoldLambdaBinding
-
- All Implemented Interfaces:
ApplyFunction.IndexableFoldLambdaBinding,Expr.InputBindingInspector,Expr.ObjectBinding
- Enclosing interface:
- ApplyFunction
public static class ApplyFunction.CartesianFoldLambdaBinding extends Object implements ApplyFunction.IndexableFoldLambdaBinding
ApplyFunction.IndexableFoldLambdaBindingfor aApplyFunction.CartesianFoldFunction. LikeApplyFunction.CartesianMapLambdaBindingbut 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.CartesianFoldLambdaBindingaccumulateWithIndex(int index, Object acc)Update the index and accumulator valueObjectget(String name)Get value binding for string identifier ofIdentifierExprExpressionTypegetAccumulatorType()intgetLength()Total number of bindings in this bindingExpressionTypegetType(String name)Get theExpressionTypefrom 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.ObjectBindingGet value binding for string identifier ofIdentifierExpr- Specified by:
getin interfaceExpr.ObjectBinding
-
getAccumulatorType
public ExpressionType getAccumulatorType()
- Specified by:
getAccumulatorTypein interfaceApplyFunction.IndexableFoldLambdaBinding
-
getLength
public int getLength()
Description copied from interface:ApplyFunction.IndexableFoldLambdaBindingTotal number of bindings in this binding- Specified by:
getLengthin interfaceApplyFunction.IndexableFoldLambdaBinding
-
accumulateWithIndex
public ApplyFunction.CartesianFoldLambdaBinding accumulateWithIndex(int index, Object acc)
Description copied from interface:ApplyFunction.IndexableFoldLambdaBindingUpdate the index and accumulator value- Specified by:
accumulateWithIndexin interfaceApplyFunction.IndexableFoldLambdaBinding
-
getType
@Nullable public ExpressionType getType(String name)
Description copied from interface:Expr.InputBindingInspectorGet theExpressionTypefrom the backing store for a given identifier (this is likely a column, but could be other things depending on the backing adapter)- Specified by:
getTypein interfaceExpr.InputBindingInspector
-
-