public static class Function.CastFunc extends Function.BivariateFunction
Function.Abs, Function.Acos, Function.ArrayAddElementFunction, Function.ArrayAppendFunction, Function.ArrayConcatFunction, Function.ArrayConstructorFunction, Function.ArrayContainsFunction, Function.ArrayLengthFunction, Function.ArrayOffsetFunction, Function.ArrayOffsetOfFunction, Function.ArrayOrdinalFunction, Function.ArrayOrdinalOfFunction, Function.ArrayOverlapFunction, Function.ArrayPrependFunction, Function.ArrayScalarFunction, Function.ArraySetAddAllFunction, Function.ArraySetAddFunction, Function.ArraysFunction, Function.ArraySliceFunction, Function.ArraysMergeFunction, Function.ArrayToMultiValueStringFunction, Function.ArrayToStringFunction, Function.Asin, Function.Atan, Function.Atan2, Function.BitwiseAnd, Function.BitwiseComplement, Function.BitwiseConvertDoubleToLongBits, Function.BitwiseConvertLongBitsToDouble, Function.BitwiseOr, Function.BitwiseShiftLeft, Function.BitwiseShiftRight, Function.BitwiseXor, Function.BivariateBitwiseMathFunction, Function.BivariateFunction, Function.BivariateMathFunction, Function.CaseSearchedFunc, Function.CaseSimpleFunc, Function.CastFunc, Function.Cbrt, Function.Ceil, Function.ConcatFunc, Function.ConditionFunc, Function.CopySign, Function.Cos, Function.Cosh, Function.Cot, Function.Div, Function.DoubleBivariateMathFunction, Function.DoubleUnivariateMathFunction, Function.Exp, Function.Expm1, Function.Floor, Function.GetExponent, Function.GreatestFunc, Function.HumanReadableBinaryByteFormatFunc, Function.HumanReadableDecimalByteFormatFunc, Function.HumanReadableDecimalFormatFunc, Function.Hypot, Function.IsNotNullFunc, Function.IsNullFunc, Function.LeastFunc, Function.LeftFunc, Function.Log, Function.Log10, Function.Log1p, Function.LowerFunc, Function.LpadFunc, Function.Max, Function.Min, Function.MultiValueStringToArrayFunction, Function.NextAfter, Function.NextUp, Function.NvlFunc, Function.ParseLong, Function.Pi, Function.Pow, Function.ReduceFunction, Function.Remainder, Function.RepeatFunc, Function.ReplaceFunc, Function.ReverseFunc, Function.RightFunc, Function.Rint, Function.Round, Function.RpadFunc, Function.SafeDivide, Function.Scalb, Function.Signum, Function.Sin, Function.Sinh, Function.SizeFormatFunc, Function.Sqrt, Function.StringFormatFunc, Function.StringLongFunction, Function.StringToArrayFunction, Function.StrlenFunc, Function.StrposFunc, Function.SubMonthFunc, Function.SubstringFunc, Function.Tan, Function.Tanh, Function.TimestampFromEpochFunc, Function.ToDegrees, Function.ToRadians, Function.Ulp, Function.UnivariateFunction, Function.UnivariateMathFunction, Function.UnixTimestampFunc, Function.UpperFunc| Constructor and Description |
|---|
CastFunc() |
| Modifier and Type | Method and Description |
|---|---|
<T> ExprVectorProcessor<T> |
asVectorProcessor(Expr.VectorInputBindingInspector inspector,
List<Expr> args)
Builds a 'vectorized' function expression processor, that can build vectorized processors for its input values
using
Expr.asVectorProcessor(org.apache.druid.math.expr.Expr.VectorInputBindingInspector), for use in vectorized query engines. |
boolean |
canVectorize(Expr.InputBindingInspector inspector,
List<Expr> args)
Check if a function can be 'vectorized', for a given set of
Expr inputs. |
protected ExprEval |
eval(ExprEval x,
ExprEval y) |
Set<Expr> |
getArrayInputs(List<Expr> args)
Given a list of arguments to this
Function, get the set of arguments that must evaluate to an array
value |
ExpressionType |
getOutputType(Expr.InputBindingInspector inspector,
List<Expr> args)
Compute the output type of this function for a given set of argument expression inputs.
|
Set<Expr> |
getScalarInputs(List<Expr> args)
Given a list of arguments to this
Function, get the set of arguments that must evaluate to a scalar value |
String |
name()
Name of the function
|
apply, validateArgumentsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waithasArrayInputs, hasArrayOutputprocessingFailed, validationFailed, validationFailed, validationHelperCheckAnyOfArgumentCount, validationHelperCheckArgIsLiteral, validationHelperCheckArgumentCount, validationHelperCheckArgumentCount, validationHelperCheckArgumentRange, validationHelperCheckLambaArgumentCount, validationHelperCheckMinArgumentCount, validationHelperCheckMinArgumentCountpublic String name()
NamedFunctionprotected ExprEval eval(ExprEval x, ExprEval y)
eval in class Function.BivariateFunctionpublic Set<Expr> getScalarInputs(List<Expr> args)
FunctionFunction, get the set of arguments that must evaluate to a scalar valuepublic Set<Expr> getArrayInputs(List<Expr> args)
FunctionFunction, get the set of arguments that must evaluate to an array
value@Nullable public ExpressionType getOutputType(Expr.InputBindingInspector inspector, List<Expr> args)
Functionpublic boolean canVectorize(Expr.InputBindingInspector inspector, List<Expr> args)
FunctionExpr inputs. If this method returns true,
Function.asVectorProcessor(org.apache.druid.math.expr.Expr.VectorInputBindingInspector, java.util.List<org.apache.druid.math.expr.Expr>) is expected to produce a ExprVectorProcessor which can evaluate values in
batches to use with vectorized query engines.public <T> ExprVectorProcessor<T> asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args)
FunctionExpr.asVectorProcessor(org.apache.druid.math.expr.Expr.VectorInputBindingInspector), for use in vectorized query engines.Copyright © 2011–2023 The Apache Software Foundation. All rights reserved.