public static class ApplyFunction.CartesianMapFunction extends ApplyFunction.BaseMapFunction
LambdaExprApplyFunction.AllMatchFunction, ApplyFunction.AnyMatchFunction, ApplyFunction.BaseFoldFunction, ApplyFunction.BaseMapFunction, ApplyFunction.CartesianFoldFunction, ApplyFunction.CartesianFoldLambdaBinding, ApplyFunction.CartesianMapFunction, ApplyFunction.CartesianMapLambdaBinding, ApplyFunction.FilterFunction, ApplyFunction.FoldFunction, ApplyFunction.FoldLambdaBinding, ApplyFunction.IndexableFoldLambdaBinding, ApplyFunction.IndexableMapLambdaObjectBinding, ApplyFunction.LambdaInputBindingInspector, ApplyFunction.MapFunction, ApplyFunction.MapLambdaBinding, ApplyFunction.MatchFunction, ApplyFunction.SettableLambdaBinding| Constructor and Description |
|---|
CartesianMapFunction() |
| Modifier and Type | Method and Description |
|---|---|
ExprEval |
apply(org.apache.druid.math.expr.LambdaExpr lambdaExpr,
List<Expr> argsExpr,
Expr.ObjectBinding bindings)
|
Set<Expr> |
getArrayInputs(List<Expr> args)
Get list of input arguments which must evaluate to an array
ExprType |
String |
name()
Name of the function
|
void |
validateArguments(org.apache.druid.math.expr.LambdaExpr lambdaExpr,
List<Expr> args)
Validate function arguments.
|
getOutputType, hasArrayOutputclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitasVectorProcessor, canVectorizeprocessingFailed, validationFailed, validationFailed, validationHelperCheckAnyOfArgumentCount, validationHelperCheckArgIsLiteral, validationHelperCheckArgumentCount, validationHelperCheckArgumentCount, validationHelperCheckArgumentRange, validationHelperCheckLambaArgumentCount, validationHelperCheckMinArgumentCount, validationHelperCheckMinArgumentCountpublic String name()
NamedFunctionpublic ExprEval apply(org.apache.druid.math.expr.LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings)
ApplyFunctionLambdaExpr to argument list of Expr given a set of outer Expr.ObjectBinding. These
outer bindings will be used to form the scope for the bindings used to evaluate the LambdaExpr, which use
the array inputs to supply scalar values to use as bindings for IdentifierExpr in the lambda body.public Set<Expr> getArrayInputs(List<Expr> args)
ApplyFunctionExprTypepublic void validateArguments(org.apache.druid.math.expr.LambdaExpr lambdaExpr,
List<Expr> args)
ApplyFunctionApplyFunctionExpr is created, and should
validate everything that is feasible up front. Note that input type information is typically unavailable at the
time Expr are parsed, and so this method is incapable of performing complete validation.Copyright © 2011–2023 The Apache Software Foundation. All rights reserved.