public static class Function.Pi extends Object implements Function
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 |
|---|
Pi() |
| Modifier and Type | Method and Description |
|---|---|
ExprEval |
apply(List<Expr> args,
Expr.ObjectBinding bindings)
Evaluate the function, given a list of arguments and a set of bindings to provide values for
IdentifierExpr. |
<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. |
ExpressionType |
getOutputType(Expr.InputBindingInspector inspector,
List<Expr> args)
Compute the output type of this function for a given set of argument expression inputs.
|
String |
name()
Name of the function
|
void |
validateArguments(List<Expr> args)
Validate function arguments.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetArrayInputs, getScalarInputs, hasArrayInputs, hasArrayOutputprocessingFailed, validationFailed, validationFailed, validationHelperCheckAnyOfArgumentCount, validationHelperCheckArgIsLiteral, validationHelperCheckArgumentCount, validationHelperCheckArgumentCount, validationHelperCheckArgumentRange, validationHelperCheckLambaArgumentCount, validationHelperCheckMinArgumentCount, validationHelperCheckMinArgumentCountpublic String name()
NamedFunctionname in interface NamedFunctionpublic ExprEval apply(List<Expr> args, Expr.ObjectBinding bindings)
FunctionIdentifierExpr.public void validateArguments(List<Expr> args)
FunctionFunctionExpr 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.validateArguments in interface Function@Nullable public ExpressionType getOutputType(Expr.InputBindingInspector inspector, List<Expr> args)
FunctiongetOutputType in interface FunctionExpr.getOutputType(org.apache.druid.math.expr.Expr.InputBindingInspector)public 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.canVectorize in interface FunctionExpr.canVectorize(Expr.InputBindingInspector),
ApplyFunction.canVectorize(Expr.InputBindingInspector, Expr, List)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.asVectorProcessor in interface FunctionExpr.asVectorProcessor(Expr.VectorInputBindingInspector),
ApplyFunction.asVectorProcessor(Expr.VectorInputBindingInspector, Expr, List)Copyright © 2011–2023 The Apache Software Foundation. All rights reserved.