public abstract static class Function.UnivariateMathFunction extends Function.UnivariateFunction
Function
, with specialized 'eval' implementations that
that operate on primitive number typesFunction.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 |
---|
UnivariateMathFunction() |
Modifier and Type | Method and Description |
---|---|
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(double param) |
protected ExprEval |
eval(ExprEval param) |
protected ExprEval |
eval(long param) |
ExpressionType |
getOutputType(Expr.InputBindingInspector inspector,
List<Expr> args)
Compute the output type of this function for a given set of argument expression inputs.
|
apply, validateArguments
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
asVectorProcessor, getArrayInputs, getScalarInputs, hasArrayInputs, hasArrayOutput
name, processingFailed, validationFailed, validationFailed, validationHelperCheckAnyOfArgumentCount, validationHelperCheckArgIsLiteral, validationHelperCheckArgumentCount, validationHelperCheckArgumentCount, validationHelperCheckArgumentRange, validationHelperCheckLambaArgumentCount, validationHelperCheckMinArgumentCount, validationHelperCheckMinArgumentCount
protected final ExprEval eval(ExprEval param)
eval
in class Function.UnivariateFunction
protected ExprEval eval(long param)
protected ExprEval eval(double param)
@Nullable public ExpressionType getOutputType(Expr.InputBindingInspector inspector, List<Expr> args)
Function
public boolean canVectorize(Expr.InputBindingInspector inspector, List<Expr> args)
Function
Expr
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.Copyright © 2011–2023 The Apache Software Foundation. All rights reserved.